Я использую CMake для создания своего приложения. Как я могу найти, где находится каталог сайтов-пакетов python? Мне нужен путь для компиляции расширения для python.
CMake должен быть в состоянии найти путь ко всем трем основным ОС, поскольку я планирую развернуть свое приложение на Linux, Mac и Windows.
Я пытался использовать
include(FindPythonLibs)
find_path( PYTHON_SITE_PACKAGES site-packages ${PYTHON_INCLUDE_PATH}/.. )
однако это не работает.
Я также могу получить путь, запустив
python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()"
на оболочке, но как мне вызвать это из CMake?
РЕШЕНИЕ:
Спасибо, Алекс.
Итак, команда, которая дает мне каталог site-package:
execute_process ( COMMAND python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()" OUTPUT_VARIABLE PYTHON_SITE_PACKAGES OUTPUT_STRIP_TRAILING_WHITESPACE)
Команда OUTPUT_STRIP_TRAILING_WHITESPACE необходима для удаления завершающей новой строки.