Как получить каталог установки модуля Python в CMake? - PullRequest
0 голосов
/ 13 сентября 2018

Я создал небольшой модуль Python с использованием C ++ и Boost, созданный с помощью CMake. Теперь мне нужно установить его в стандартный каталог модулей Python, однако это должен быть путь внутри CMAKE_INSTALL_PREFIX, чтобы его можно было упаковать в стандартную систему пакетов Debian.

Теперь у меня есть это, где последняя строка явно неверна, так как это абсолютный путь к системному каталогу.

cmake_minimum_required(VERSION 3.12)
project(foo)

# Not Shown: Extract ${PYTHON_VERSION} from interpreter

find_package(Python ${PYTHON_VERSION} REQUIRED COMPONENTS Interpreter Development)

find_package(Boost 1.55.0 REQUIRED COMPONENTS system python${Python_VERSION_MAJOR}${Python_VERSION_MINOR})

Python_add_library(foo MODULE
    src/foo.cc src/python_interface.cc
)
set_target_properties(foo PROPERTIES PREFIX "")
target_link_libraries(foo
    PUBLIC
        Boost::python${Python_VERSION_MAJOR}${Python_VERSION_MINOR}
)

# This is wrong
install(TARGETS foo DESTINATION ${Python_SITEARCH}/foo)

Я также взглянул на distutils и setuptools Python, однако они не подходят для автономного использования.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...