[GRASS-user] GRASS GIS 7.03 for Mac OS X, problem with wxPython (missing)

William Kyngesburye woklist at kyngchaos.com
Tue Mar 15 10:05:23 PDT 2016


This is also a known issue, related to but separate from the packaging issue.  During compilation, GRASS also uses DYLD_LIBRARY_PATH to find the in-compilation copies of the libraries so it can run the modules to create the help files.

The packaging issue with DYLD_LIBRARY_PATH can be fixed in packaging so that everything within the GRASS app package looks directly inside the package for libraries and not rely on DYLD_LIBRARY_PATH.  Homebrew, Macports and /usr/local builds don't need to worry about it because the extra dependencies that are bundled in the app are already in their proper place.

The compilation issue needs work to compile all libraries with the temporary path inside the libraries and modules (this part is easy) so that during compilation help file generation works.  And then during installation change all the embedded library paths to the final destination (this is harder, to figure out the complex makefile include system of GRASS to get this operation in the right place).  Homebrew, Macports, /usr/local AND app installs do have a problem with this.  It works for Michael (and me) for the "official" packages because we compile on older systems that don't have SIP.

> On Mar 15, 2016, at 11:39 AM, Rainer M Krug <Rainer at krugs.de> wrote:
> 
> 
> I tried again to install 7.1 head without GUI using homwbrew, and I get
> the following error:
> 
> ,----
> | bash-4.3$ less   /Users/rainerkrug/Library/Logs/Homebrew/grass-71/02.make
> | bash-4.3$ cd /private/tmp/grass-7120160315-47344-1ybn5ar/scripts/d.rast.leg
> | bash-4.3$ ls
> | Makefile        d.rast.leg.html d.rast.leg.py
> | bash-4.3$ make
> | if [ "/private/tmp/grass-7120160315-47344-1ybn5ar/dist.x86_64-apple-darwin15.3.0/scripts/d.rast.leg" != "" ] ; then GISRC=/private/tmp/grass-7120160315-47344-1ybn5ar/dist.x86_64-apple-darwin15.3.0/demolocation/.grassrc71 GISBASE=/private/tmp/grass-7120160315-47344-1ybn5ar/dist.x86_64-apple-darwin15.3.0 PATH="/private/tmp/grass-7120160315-47344-1ybn5ar/dist.x86_64-apple-darwin15.3.0/bin:/private/tmp/grass-7120160315-47344-1ybn5ar/dist.x86_64-apple-darwin15.3.0/bin:/private/tmp/grass-7120160315-47344-1ybn5ar/dist.x86_64-apple-darwin15.3.0/scripts:$PATH" PYTHONPATH="/private/tmp/grass-7120160315-47344-1ybn5ar/dist.x86_64-apple-darwin15.3.0/etc/python:/private/tmp/grass-7120160315-47344-1ybn5ar/dist.x86_64-apple-darwin15.3.0/gui/wxpython:$PYTHONPATH" DYLD_LIBRARY_PATH="/private/tmp/grass-7120160315-47344-1ybn5ar/dist.x86_64-apple-darwin15.3.0/bin:/private/tmp/grass-7120160315-47344-1ybn5ar/dist.x86_64-apple-darwin15.3.0/bin:/private/tmp/grass-7120160315-47344-1ybn5ar/dist.x86_64-apple-darwin15.3.0/scripts:/private/tmp/grass-7120160315-47344-1ybn5ar/dist.x86_64-apple-darwin15.3.0/lib:/private/tmp/grass-7120160315-47344-1ybn5ar/dist.x86_64-apple-darwin15.3.0/lib:" LC_ALL=C /private/tmp/grass-7120160315-47344-1ybn5ar/dist.x86_64-apple-darwin15.3.0/scripts/d.rast.leg --html-description < /dev/null | grep -v '</body>\|</html>' > d.rast.leg.tmp.html ; fi
> | dyld: Library not loaded: /usr/local/Cellar/grass-71/HEAD/grass-7.1.svn/lib/libgrass_gis.7.1.svn.dylib
> |   Referenced from: /private/tmp/grass-7120160315-47344-1ybn5ar/dist.x86_64-apple-darwin15.3.0/bin/g.parser
> |   Reason: image not found
> | make: *** [d.rast.leg.tmp.html] Error 1
> | rm d.rast.leg.tmp.html
> | bash-4.3$
> `----
> 
> In other words: grass is looking during the compilation for a dynamic
> library
> (/usr/local/Cellar/grass-71/HEAD/grass-7.1.svn/lib/libgrass_gis.7.1.svn.dylib)
> which has been created, but will only be there when installing.
> 
> Also important: this error only occurs when the html manual pages are
> created!
> 
> Cheers,
> 
> Rainer
> 
> 
> Rainer M Krug <Rainer at krugs.de> writes:
> 
>> Adam Dershowitz <adershowitz at exponent.com> writes:
>> 
>>> I use Macports for a  bunch of other things (and Homebrew is incompatible
>>> with Macports)   So, I figured that I would just tried to install grass7
>>> using macports.  It does seem to install, but the gui doesn’t work:
>>> 
>>> $grass70 
>>> Cleaning up temporary files...
>>> Starting GRASS GIS...
>>> ERROR: wxGUI requires wxPython. No module named wxversion
>>> Error in GUI startup. If necessary, please report this error to the GRASS
>>> developers.
>>> Switching to text mode now.
>>> 
>> 
>> I don't use MacPorts - but can you try to install without GUI?
>> 
>>> 
>>> Hit RETURN to continue...
>>> 
>>> 
>>> 
>>> This is odd, since wxpython is installed.
>>> But, it seems like this is a different problem.
>>> 
>>> 
>>> -- Adam

-----
William Kyngesburye <kyngchaos*at*kyngchaos*dot*com>
http://www.kyngchaos.com/

[Trillian]  What are you supposed to do WITH a maniacally depressed robot?

[Marvin]  You think you have problems?  What are you supposed to do if you ARE a maniacally depressed robot?  No, don't try and answer, I'm 50,000 times more intelligent than you and even I don't know the answer...

- HitchHiker's Guide to the Galaxy




More information about the grass-user mailing list