Я пытаюсь создать приложение "helloworld" на C ++ со встроенным кодом Python. Я включаю Python.h, и это замечено статическим анализатором нормально. Когда я строю свой код, я получаю undefined reference to '_imp__Py_Initialize'
, поэтому make fail
Я использую Windows7-x64 с Python3.5-x32, MinGW-x64, CLion для написания кода. Ни одно из руководств, которые я нашел, не показывает полные пошаговые решения. Если мне нужно переустановить некоторые конкретные версии программного обеспечения, мне нужно знать - что делать ...
CMakeLists.txt
cmake_minimum_required(VERSION 3.12)
project(sample)
find_package(PythonLibs 3.5 REQUIRED)
find_package(PythonInterp 3.5 REQUIRED)
include_directories(${PYTHON_INCLUDE_DIRS})
set(CMAKE_CXX_STANDARD 14)
add_executable(sample main.cpp)
main.cpp
#include <Python.h>
int main() {
Py_Initialize();
PyRun_SimpleString("print('hello, python')");
Py_Finalize();
return 0;
}
Итак, тема поднимается, у меня есть неопределенная ссылка. Когда я добавляю target_link_libraries(${PYTHON_LIBRARIES})
к своему CMakeLists.txt
, я получаю еще одно исключение:
Cannot specify link libraries for target
"C:/Users/...../Python35-32/python35.dll"
which is not built by this target.
Пожалуйста, дайте мне еще несколько идей, что с этим делать, если вы не возражаете.