Unterstützt CMake Python3?
Ich kann mit CMake und Swig for Python3 kein Python-Wrapper-Modul für meine C-Bibliothek erstellen. Alles funktioniert gut für Python2.x, aber es sieht so aus, als ob CMake Python3 nicht finden kann. Ich habe mich schon umgesehen und ein paar Dinge ausprobiert.
Zum Beispiel meinepython
Ausführbare Links zu Python3, wie ich CMake gelesen habe, werden diese Version zuerst finden.
Bitte sehen Sie hier den SWIG Teil desCMakeLists.txt
:
FIND_PACKAGE(SWIG REQUIRED)
INCLUDE(${SWIG_USE_FILE})
FIND_PACKAGE(PythonInterp 3)
FIND_PACKAGE(PythonLibs 3)
FIND_PATH(PYTHON_INCLUDE_PATH Python.h
/usr/include
/usr/local/include)
INCLUDE_DIRECTORIES(${PYTHON_INCLUDE_DIRS})
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_SOURCE_DIR})
SET(CMAKE_SWIG_FLAGS "")
SET_SOURCE_FILES_PROPERTIES(kissCT3.i PROPERTIES CPLUSPLUS ON)
#SET_SOURCE_FILES_PROPERTIES(kissCT3.i PROPERTIES SWIG_FLAGS "-includeall -py3")
SWIG_ADD_MODULE(kissCT3 python kissCT3.i)
SWIG_LINK_LIBRARIES(kissCT3 libct2d matio kissfft ${PYTHON_LIBRARIES})
Leider zeigt die Ausgabe nach dem Aufruf von cmake, dass nur python2.7 gefunden wird:
-- Found SWIG: /usr/bin/swig2.0 (found version "2.0.4")
-- Found PythonInterp: /usr/bin/python2.7 (Required is at least version "3")
-- Found PythonLibs: /usr/lib/libpython2.7.so (Required is at least version "3")
-- Configuring done
-- Generating done