У меня есть проект, который должен поддерживать платформы Win32
и x64
.Некоторый код генерируется скриптом Python.Этот скрипт использует python3
функций.
В CMakeLists.txt
У меня есть что-то вроде этого:
find_package(PythonInterp REQUIRED)
if (CMAKE_CL_64)
set(MY_APP_PLATFORM "x64")
else()
set(MY_APP_PLATFORM "Win32")
endif()
add_custom_command(TARGET MyApp
PRE_BUILD
COMMAND ${PYTHON_EXECUTABLE} ${MyApp_ROOT}/generator.py -p ${MY_APP_PLATFORM }
WORKING_DIRECTORY ${PATH_GENERATED_SRC}
COMMENT "Generating code..."
VERBATIM
)
Довольно просто.
Теперь, когда проект для x64
используется все работает как шарм, но при сборке для Win32
(cmake должен сгенерировать отдельный проект) cmake
находит python 2.7.2
.
Изменение CMakeLists.txt
таким образом:
find_package(PythonInterp 3.7 REQUIRED)
Приводит к ошибке cmake.
Есть ли способ исправить это, или мне нужно исправить скрипт питона, чтобы он был python2
совместимым?
Или мне нужно установить python3
для 32 и 64 бит, чтобы покрыть обе платформы?