Tôi sử dụng CMake để xây dựng ứng dụng của mình. Làm thế nào tôi có thể tìm thấy thư mục python site-packages nằm ở đâu? Tôi cần đường dẫn để biên dịch một phần mở rộng cho python.Tìm thư mục gói trang python với CMake
CMake phải có khả năng tìm đường dẫn trên cả ba hệ điều hành chính khi tôi định triển khai ứng dụng của mình trên Linux, Mac và Windows.
tôi đã cố gắng sử dụng
include(FindPythonLibs)
find_path(PYTHON_SITE_PACKAGES site-packages ${PYTHON_INCLUDE_PATH}/..)
tuy nhiên điều đó không làm việc.
Tôi cũng có thể có được con đường bằng cách chạy
python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()"
trên vỏ, nhưng làm thế nào tôi sẽ gọi mà từ CMake?
GIẢI PHÁP:
Cảm ơn, Alex. Vì vậy, các lệnh đó mang lại cho tôi những dir trang web gói là:
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)
Lệnh OUTPUT_STRIP_TRAILING_WHITESPACE là cần thiết để loại bỏ các dòng mới trailing.
Chỉ để tham khảo trong tương lai; Tôi đã tìm thấy gói tuyệt vời này: https://github.com/lyricat/Hotot/tree/master/cmake/modules – dashesy