柯南 + cmake + boost python
Conan + cmake + boost python
我刚刚开始使用我的 cmake 文件中的 conan 来下载和构建依赖项 - 非常方便。我也尝试过将它用于 Boost,但是用于 boost 的默认 conanfile 似乎没有构建我需要的 boost python。我当前的设置如下:
conan_cmake_configure(REQUIRES
fmt/8.0.1
boost/1.75.0
eigen/3.4.0
GENERATORS cmake_find_package)
conan_cmake_autodetect(settings)
conan_cmake_install(PATH_OR_REFERENCE .
BUILD missing
REMOTE conancenter
SETTINGS ${settings})
find_package(Eigen3 REQUIRED)
find_package(Boost COMPONENTS Python) // Approx syntax
...
这失败了,因为 Boost python 包不可用。我想我可以编辑 conan_make_configures()
命令以确保构建了 boost Python?
你可以使用conan_cmake_configure
的OPTIONS
变量:
conan_cmake_configure(REQUIRES
fmt/8.0.1
boost/1.75.0
eigen/3.4.0
GENERATORS cmake_find_package
OPTIONS boost:without_python=False
)
参见:https://github.com/conan-io/conan_cmake_configure
您可以在以下位置找到 boost 包的所有可用选项:boost C/C++ Package - JFrog ConanCenter
[编辑 1]:使用 conanfile
和 cmake-conan
您还可以创建一个 conanfile.txt
来管理您的依赖项:
[requires]
fmt/8.0.1
boost/1.75.0
eigen/3.4.0
[options]
boost:without_python=False
[generators]
cmake_find_package
cmake_paths
并调用conan_cmake_run
如下:
conan_cmake_autodetect(settings)
conan_cmake_run(
CONANFILE conanfile.txt
BASIC_SETUP CMAKE_TARGETS
BUILD missing
SETTINGS ${settings}
)
我刚刚开始使用我的 cmake 文件中的 conan 来下载和构建依赖项 - 非常方便。我也尝试过将它用于 Boost,但是用于 boost 的默认 conanfile 似乎没有构建我需要的 boost python。我当前的设置如下:
conan_cmake_configure(REQUIRES
fmt/8.0.1
boost/1.75.0
eigen/3.4.0
GENERATORS cmake_find_package)
conan_cmake_autodetect(settings)
conan_cmake_install(PATH_OR_REFERENCE .
BUILD missing
REMOTE conancenter
SETTINGS ${settings})
find_package(Eigen3 REQUIRED)
find_package(Boost COMPONENTS Python) // Approx syntax
...
这失败了,因为 Boost python 包不可用。我想我可以编辑 conan_make_configures()
命令以确保构建了 boost Python?
你可以使用conan_cmake_configure
的OPTIONS
变量:
conan_cmake_configure(REQUIRES
fmt/8.0.1
boost/1.75.0
eigen/3.4.0
GENERATORS cmake_find_package
OPTIONS boost:without_python=False
)
参见:https://github.com/conan-io/conan_cmake_configure
您可以在以下位置找到 boost 包的所有可用选项:boost C/C++ Package - JFrog ConanCenter
[编辑 1]:使用 conanfile
和 cmake-conan
您还可以创建一个 conanfile.txt
来管理您的依赖项:
[requires]
fmt/8.0.1
boost/1.75.0
eigen/3.4.0
[options]
boost:without_python=False
[generators]
cmake_find_package
cmake_paths
并调用conan_cmake_run
如下:
conan_cmake_autodetect(settings)
conan_cmake_run(
CONANFILE conanfile.txt
BASIC_SETUP CMAKE_TARGETS
BUILD missing
SETTINGS ${settings}
)