I am trying to build some project ([crocoddyl](https://github.com/loco-3d/crocoddyl)) against the conda environment using CMake. Build command is:
cmake -DCMAKE_INSTALL_PREFIX=$CONDA_PREFIX ${CMAKE_ARGS} -S . -B build
I have all the necessary dependencies, namely pinocchio, libboost-python-devel, eignepy. CMake successfully finds eignepy, it is fine, however, when eigenpy checks for boost-python dependency, everything crashes with error:
CMake Error at /home/m8/micromamba/envs/sber-croc/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
Could NOT find Boost (missing: python310) (found version "1.85.0")
Call Stack (most recent call first):
/home/m8/micromamba/envs/sber-croc/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:600 (_FPHSA_FAILURE_MESSAGE)
/home/m8/micromamba/envs/sber-croc/share/cmake-3.29/Modules/FindBoost.cmake:2393 (find_package_handle_standard_args)
/home/m8/micromamba/envs/sber-croc/lib/cmake/eigenpy/boost.cmake:144 (find_package)
/home/m8/micromamba/envs/sber-croc/lib/cmake/eigenpy/eigenpyConfig.cmake:149 (SEARCH_FOR_BOOST_PYTHON)
cmake/package-config.cmake:110 (find_package)
CMakeLists.txt:90 (add_project_dependency)
I know for sure, that $CONDA_PREFIX/lib
contains libboost_python310.so
and libboost_python310.so.1.84.0
. However my host system does not have python bindings and only has 1.85.0 version of boost. So I think that during CMake, somehow find_package of eigenpy messes with prefixes and looks in the wrong lib dir.
How do I either ignore the system lib or properly specify prefixes?
I have tried export CMAKE_PREFIX_PATH=$CONDA_PREFIX
as well as -DCMAKE_PREFIX_PATH=$CONDA_PREFIX
with no luck. Exporting LD_LIBRARY_PATH
did not have effect either. CMake, compilers, pkg-config, everything is installed in conda environment.
Asked by m8dotpie
(1 rep)
May 28, 2024, 07:41 AM
Last activity: May 30, 2024, 10:34 AM
Last activity: May 30, 2024, 10:34 AM