【发布时间】:2020-11-25 00:06:26
【问题描述】:
我正在尝试遵循在this 页面上找到的使用 pybind11 在 c++ 中嵌入 python 的简单示例。但是,当尝试使用 cmake 构建解决方案时,我不断收到一个错误提示
通过在 CMAKE_MODULE_PATH 中未提供“Findpybind11.cmake”,该项目已要求 CMake 查找包配置文件 由“pybind11”提供,但 CMake 没有找到。
找不到“pybind11”提供的包配置文件 具有以下任何名称:
pybind11Config.cmake pybind11-config.cmake
我的桌面上有一个名为 pybindtest 的文件夹,其中包括上面链接中描述的 CMakeLists.txt 和 main.cpp,以及我创建的构建文件夹。在构建文件夹中,我尝试了以下几行无济于事(在 Powershell 7 上运行):
cmake ..
cmake .. -Dpybind11_DIR=C:/Users/ben.wolfley/Anaconda3/Library/share/cmake/pybind11/pybind11Config.cmake
cmake .. -DCMAKE_MODULE_PATH=C:/Users/ben.wolfley/Anaconda3/Library/share/cmake/pybind11
我使用conda install pybind11安装了pybind11,而pybind11Config.cmake在C:\Users\ben.wolfley\Anaconda3\Library\share\cmake\pybind11中
【问题讨论】:
-
如果你尝试使用 cmakegui,应该有一个名为 pybind11_DIR 的变量。您可以尝试将其设置为 *.cmake 目录并重试吗?
-
或者我认为你应该设置 CMAKE_PREFIX_PATH 而不是 CMAKE_MODULE_PATH
-
"... 并且 pybind11Config.cmake 位于
C:\Users\ben.wolfley\Anaconda3\Library\share\cmake\pybind11" - 所以将pybind11_DIR变量设置为该 directory,如错误消息所示(而不是 file,按照您当前的设置)。
标签: c++ powershell cmake pybind11 python-embedding