I think the issue is that wx libraries are in 2 places on the Mac: 1) in /usr/lib/ installed with the system and 2) in /usr/local/lib/wx- python... for the libraries that are installed with a new installation of wxPython.

The latter is what is pointed to in the config statement and it seems that these should be the libraries linked. However, vdigit and wx3D were somehow linking the older system libraries and NOT linking with the ones specified in configure. Other than vdigit and wx3D, wxPython is linking with the ones specified in configure.

Michael
____________________
C. Michael Barton, Professor of Anthropology
Director of Graduate Studies, School of Human Evolution & Social Change
Director, Center for Social Dynamics & Complexity
Arizona State University

Phone: 480-965-6262
Fax: 480-965-7671
www: <www.public.asu.edu/~cmbarton>



On May 31, 2009, at 1:51 AM, Glynn Clements wrote:


William Kyngesburye wrote:

Nothing in GRASS should link directly to them on OSX.  Only wxpython
modules should link to the wx libraries, vdigit just loads wxpython.

I found that wx nviz and vdigit *did* link the wx libraries - a
reversion in the switch to setup.py that I missed.  Fixed now in SVN.

Code which calls wx functions directly *should* be explicitly linking
against the wx libraries.

Even if you can rely upon wx having been loaded by wxPython, there are
other issues, e.g. Gentoo's revdep-rebuild relies upon "ldd" output
for dependency tracking, and won't be able to detect that these files
need to be re-built if wx is updated unless they are explicitly linked
against the wx libraries.

It doesn't hurt to link the wx libraries, but maybe, if there are
multiple copies of wxpython installed (system and /usr/local), the one
that was linked at compile time is different than the one found in
sys.path at run time.  This would cause trouble.

There isn't anything you can do about this; even if you force e.g.
the vdigit module to use a specific version of wx with e.g. -rpath, if
wxPython itself loads a different version, either vdigit will end up
using that version (wrong) or you will end up with two different
versions in memory (also wrong).

--
Glynn Clements <gl...@gclements.plus.com>

_______________________________________________
grass-dev mailing list
grass-dev@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-dev

Reply via email to