为了账号安全,请及时绑定邮箱和手机立即绑定

安装pybind11时cmake出现问题

安装pybind11时cmake出现问题

慕码人2483693 2023-09-19 13:56:11
我正在尝试按照文档开始使用 pybind11 。我已经使用 pip 安装了 pybind11。该目录的位置是: ~/anaconda3/lib/python3.6/site-packages/pybind11下一步是编译测试用例。根据文档,我应该运行mkdir buildcd buildcmake ..make check -j 4但是,运行时cmake ..出现错误CMake Error: The source directory "/home/MyUserName/anaconda3/lib/python3.6/site-packages/pybind11" does not appear to contain CMakeLists.txt。所以看来我在pip install 创建的目录CMakeLists.txt中没有该文件。pybind11知道这里出了什么问题吗?
查看完整描述

2 回答

?
湖上湖

TA贡献2003条经验 获得超2个赞

当您使用 pip 安装 pybind11 时,您将仅获得结果,而不是 pybind 的源(py 文件、包含文件...)。

要运行该示例,您必须检查源代码git clone --recursive https://github.com/pybind/cmake_example.git,然后根据文档运行命令。


查看完整回答
反对 回复 2023-09-19
?
叮当猫咪

TA贡献1776条经验 获得超12个赞

我正在努力解决同样的问题。但是,我确实开始将 pybind11 作为子模块包含在内。当尝试运行“cmake ..”时,我收到以下错误代码:


CMake Error: The source directory "C:/Users/XXXXX/Documents/GitHub/MT" does not appear to contain CMakeLists.txt.

Specify --help for usage, or press the help button on the CMake GUI.

(我正在 Windows 机器上工作,文件夹是 GitHub 的一部分,使用 C++ 的 Hello World 程序可以工作。)


从长远来看,尝试运行以下最小代码示例:


#include <pybind11>


int add(int i, int j) {

    return i + j;

}


PYBIND11_MODULE(example, m) {

    m.doc() = "pybind11 example plugin"; // optional module docstring


    m.def("add", &add, "A function which adds two numbers");

}


查看完整回答
反对 回复 2023-09-19
  • 2 回答
  • 0 关注
  • 316 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信