[Bf-committers] strange scons/python interaction

bf-committers@blender.org bf-committers@blender.org
Thu, 26 Feb 2004 08:37:23 -0600


Gregor Mück wrote:
> Hi!
> 
> I've run into a problem with Python and SCons. I compile my local Blender 
> against Python 2.3.3. As long as I used the autoconf/automake system 
> everything worked fine. But when I use a Blender binary compiled with SCons 
> the simple Python command "import math" fails with
> 
> ImportError: /usr/lib/python2.3/lib-dynload/math.so: undefined symbol: 
> PyDict_SetItemString
> 
> When I build Blender with the old NaN makefiles from the same sources (also 
> against Python 2.3), the problem disappears. The question is: What does SCons 
> do differently?
> 
It appears scons isn't completely tested or implemented, at
least under linux.  You need to add some flags to the
platform_linkflags to allow python to work:
     platform_linkflags = ['-Wl,-export-dynamic']
If you're on another plaform, its probably something similar
as well.

There's possibly a better way to do this, I know very little
about scons and just ran into this the other day when I finally
decided to try to get the scons build system working.  After
which none of the python scripts I use worked.  Adding the
export-dynamic resovled this for me.

--
Todd Koeckeritz, zaz@visi.com

Surfin' the Web with an ActiveX enabled browser is kindof like having
to worry about getting shot everytime you knock on a door.