[英]Couldn't make swig wrapper with CMake
Hi all I trying to build python swig wrapper with CMake. 大家好,我尝试使用CMake构建python swig包装器。 And I have following issues during make:
我在制作过程中遇到以下问题:
/usr/local/lib/libpython2.7.a(abstract.o): relocation R_X86_64_32S against `_Py_NotImplementedStruct' can not be used when making a shared object; recompile with -fPIC
Here is my CMakeLists.txt: 这是我的CMakeLists.txt:
cmake_minimum_required(VERSION 2.8)
FIND_PACKAGE(SWIG REQUIRED)
INCLUDE(${SWIG_USE_FILE})
FIND_PACKAGE(PythonLibs)
INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_PATH})
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})
SET(CMAKE_SWIG_FLAGS "-Wall" "-c++")
SET_SOURCE_FILES_PROPERTIES(feature.i PROPERTIES CPLUSPLUS ON)
SET_SOURCE_FILES_PROPERTIES(feature.i PROPERTIES SWIG_FLAGS "-includeall")
SWIG_ADD_MODULE(feature_wrapper python feature.i)
SWIG_LINK_LIBRARIES(feature_wrapper ${PYTHON_LIBRARIES})
In your CMakeLists.txt
file, add the following line: 在您的
CMakeLists.txt
文件中,添加以下行:
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
And replace the following line with: 并将以下行替换为:
SWIG_ADD_MODULE(feature python feature.i feature.cxx)
SWIG_LINK_LIBRARIES(feature ${PYTHON_LIBRARIES})
Then you can check it out by doing 然后您可以通过执行检查
python
>>> import feature
>>> print dir(feature)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.