cmake не может найти boost python в среде conda

У меня возникли проблемы с установкой пакета Python с именем Fred(https://github.com/derohde/Fred ) в Ubuntu 20.04, который использует boost python. Я собираю boost 1.73.0 из исходного кода, используя python 3.8.6 в среде miniconda. Я проверил, что boost python успешно скомпилирован, но cmake не может его найти.

boost: 1.73.0
python: 3.8.6
cmake: 3.17

Используемая команда cmake:

 Command '['cmake', '/home/ubuntu/Program/Fred/py/..', '-DBPY=python3.8', '-DBNPY=numpy38', 
'-DBOOST_ROOT=~/boost', 
'-DBOOST_LIBRARYDIR=~/boost/lib', 
'-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=/home/ubuntu/Program/Fred/py/build/lib.linux-x86_64-3.8/Fred', 
'-DPYTHON_EXECUTABLE=/home/ubuntu/.pyenv/versions/miniconda3-latest/bin/python', 
'-DCMAKE_BUILD_TYPE=Release']'

Часть вывода сообщения cmake:

-- Found PythonInterp: /home/ubuntu/.pyenv/versions/miniconda3-latest/bin/python (found version "3.8.6")
-- Found PythonLibs: /home/ubuntu/.pyenv/versions/miniconda3-latest/lib/libpython3.8.so (found version "3.8.6")
CMake Warning at /snap/cmake/580/share/cmake-3.17/Modules/FindBoost.cmake:2007 (message):
  No header defined for python.; skipping header check (note: header-only
  libraries have no designated component)
Call Stack (most recent call first):
  CMakeLists.txt:23 (find_package)


CMake Error at /snap/cmake/580/share/cmake-3.17/Modules/FindPackageHandleStandardArgs.cmake:164 (message):
  Could NOT find Boost (missing: python.) (found suitable version "1.73.0",
  minimum required is "1.63")
Call Stack (most recent call first):
  /snap/cmake/580/share/cmake-3.17/Modules/FindPackageHandleStandardArgs.cmake:445 (_FPHSA_FAILURE_MESSAGE)
  /snap/cmake/580/share/cmake-3.17/Modules/FindBoost.cmake:2166 (find_package_handle_standard_args)
  CMakeLists.txt:23 (find_package)

введите здесь описание изображения

введите здесь описание изображения


person WZhao    schedule 16.12.2020    source источник
comment
stackoverflow.com/q/56067518/681865 - вам, вероятно, придется изменить сборку, чтобы явно указать версию Python   -  person talonmies    schedule 16.12.2020
comment
@talonmies Большое спасибо. Оно работает. Я трачу несколько дней, чтобы найти проблему. Это потому, что я изменил авторов CMakeLists.txt.   -  person WZhao    schedule 16.12.2020