[GRASS-dev] compilation success

William Kyngesburye woklist at kyngchaos.com
Wed Oct 8 23:46:31 EDT 2008


I updated wxpython/nviz/nviz.i - the #undef check fix from a while  
back was wrong, so it wouldn't compile.  I haven't tried running it  
yet, I only have my brain half on this right now.

But I ran into another interesting compile issue, that probably only a  
few would run into, when compiling a universal binary.  Using the  
system python and an up-to-date wxpython, the ppc side is missing some  
symbols in the wx libraries.  Looks like a problem with the wxpython  
builds, but not the system wxpython.  This was with wxpython 2.8.9.1  
and 2.8.7.1 (and probably 2.8.8.1 also).

I tried a single-arch ppc-only (from intel), and that didn't work  
either.  I don't have a PPC Leopard Mac to try a native PPC build.


c++ -o OBJ.i386-apple-darwin9.5.0/_grass6_wxnviz.so ......

Undefined symbols:
   "typeinfo for wxThread", referenced from:
       typeinfo for wxThreadHelperThreadin change_view.o
       typeinfo for wxThreadHelperThreadin draw.o
       typeinfo for wxThreadHelperThreadin init.o
       typeinfo for wxThreadHelperThreadin lights.o
       typeinfo for wxThreadHelperThreadin load.o
       typeinfo for wxThreadHelperThreadin surface.o
       typeinfo for wxThreadHelperThreadin vector.o
       typeinfo for wxThreadHelperThreadin volume.o
       typeinfo for wxThreadHelperThreadin grass6_wxnviz_wrap.o
ld: symbol(s) not found

Indeed, on the Intel side of libwx_macud wxThreadHelperThread exists,  
but it does not on the PPC side.

And strangely, there are no wx link errors in vdigit.  Hmmm...

Now I come back to another patch I suggested a while back - the Python  
library/framework should not be directly linked on OSX.  So, in the wx  
nviz and vdigit makefiles, the inclusion of $(PYTHONLDFLAGS) needs to  
be conditionalized like -lgdi is for nviz.  --> When I do this, the  
wxThreadHelperThread error above goes away.

I applied this to SVN.

On Oct 8, 2008, at 4:40 PM, Michael Barton wrote:

> I just updated GRASS 6.4 from the SVN and compiled. I had to compile  
> the wxPython nviz and vdigit manually, but all compiled. This is  
> very good news. The bad news is that neither vdigit nor nviz yet work.
>
> When I try vdigit, I still get a "Unable to initialize display  
> driver" error.
>
> When I try the new nviz, I nothing happens visually, but I get the  
> following in the layer manager output window.

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

"Oh, look, I seem to have fallen down a deep, dark hole.  Now what  
does that remind me of?  Ah, yes - life."

- Marvin




More information about the grass-dev mailing list