2015-01-06 100 views
1

我试图编译Boost.Python的一个项目,但遇到以下问题Boost.Python的未定义的符号问题

undefined symbol: _ZN5boost6python7objects23register_dynamic_id_auxENS0_9type_infoEPFNSt3__14pairIPvS2_EE 

我使用cmake

... 
# Find necessary packages 
find_package(PythonLibs 2.7 REQUIRED) 
include_directories(${PYTHON_INCLUDE_DIRS}) 

find_package(Boost COMPONENTS python REQUIRED) 
include_directories(${Boost_INCLUDE_DIR}) 

add_library(test_py SHARED ${SOURCE_FILES}) 

list(APPEND CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}) 
target_link_libraries(test_py lib1) 
target_link_libraries(test_py boost_python) 
target_link_libraries(test_py python2.7) 
set_target_properties(test_py PROPERTIES PREFIX "") 

构建它之后,我已经安装脚本,将所有文件复制到目录test_py,其中init .py文件

from test_py import * 

任何想法我失踪?

干杯,迈克

回答

0

设置LD_LIBRARY_PATH固定这一点。