Re: [cgkit-user] Problem linking cgkit with boost 1.41 and above
Brought to you by:
mbaas
|
From: Ben H. <bh...@we...> - 2011-06-21 23:43:51
|
Hi Matthias, Thanks for the advice. In the end the problem was caused by mixed boost include files. I completely removed all boost packages from the system and modified setup.py to include the correct boost directory. Cheers, -- Ben On 17/06/11 19:12, Matthias Baas wrote: > Hi Ben, > > On 15.06.11 06:09, Ben Hall wrote: >> I have tried statically linking and dynamically linking to boost 1.41 >> through to boost 1.46.1 with python 2.6.4 on 64bit linux (ubuntu lucid). >> It compiles fine but I always receive this error on trying to import >> cgkit.cgtypes: >> >> >>> import cgkit.cgtypes as cgtypes >> Traceback (most recent call last): >> File "<stdin>", line 1, in<module> >> File >> "/vol/apps/python-2.6.4_64/lib/python2.6/site-packages/cgkit/cgtypes.py", line >> 59, in<module> >> import _core >> ImportError: >> /vol/apps/python-2.6.4_64/lib/python2.6/site-packages/cgkit/_core.so: >> undefined symbol: >> _ZN5boost6python7objects9enum_baseC2EPKcPFP7_objectPKvEPFPvS6_EPFvS6_PNS0_9converter30rvalue_from_python_stage1_dataEENS0_9type_infoE >> >> I can import without any issues if I link against boost 1.33 and 1.34. >> Any suggestions on how to get this working would be much appreciated. > > Well, I don't think it's an issue with Boost.Python itself. I can > compile against 1.46.1 on 64bit Linux just fine without getting any > errors at import time (this is on Fedora though, not Ubuntu). > > Make sure you are not accidentally mixing two versions of Boost. The > include path and lib path must point to the same version. Also check the > Boost.Python library name. Depending on how Boost was build, the name > may just be "libboost_python" or it may include compiler information. > Also double check that Boost.Python was really built against the version > of Python you are using cgkit with. > > You can check with ldd what Boost.Python lib _core.so will pick up. > Maybe LD_LIBRARY_PATH is pointing to a directory that contains a > different version of Boost? > > Cheers, > > - Matthias - |