Znajdowanie katalogu pakietów-pythona za pomocą CMake

Używam CMake do tworzenia aplikacji. Jak mogę znaleźć miejsce, w którym znajduje się katalog pakietów witryny Pythona? Potrzebuję ścieżki, aby skompilować rozszerzenie do Pythona.

CMake musi być w stanie znaleźć ścieżkę do wszystkich trzech głównych systemów operacyjnych, ponieważ planuję wdrożyć moją aplikację na systemach Linux, Mac i Windows.

Próbowałem użyć

include(FindPythonLibs)
find_path( PYTHON_SITE_PACKAGES site-packages ${PYTHON_INCLUDE_PATH}/.. )

jednak to nie działa.

Mogę również uzyskać ścieżkę, uruchamiając

python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()"

na powłoce, ale jak mam to wywołać z CMake?

ROZWIĄZANIE:

Dzięki, Alex. Zatem polecenie, które daje mi katalog pakietu-strony, to:

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)

Polecenie OUTPUT_STRIP_TRAILING_WHITESPACE jest potrzebne do usunięcia końcowego nowego wiersza.

questionAnswers(4)

yourAnswerToTheQuestion