我正在使用 Pybind11 创建与 c++ 代码的 python 绑定。我的项目架构如下:
-- MyProject
| -- lib
| -- pybind11
| -- CMakeLists.txt
| -- include
| -- myCPPCode
| -- CMakeLists.txt
| -- MyCodeDefinitions.h
| -- MyCode.cpp
| -- src
| -- MyProject
| -- MyModule.cpp
| -- CMakeLists.txt
| -- setup.py
我想要做的,是#include <myCPPCode/MyCodeDefinitions.h>
将MyModule.cpp
.
为了做到这一点,我在全局中添加CMakeLists.txt
了以下命令:add_subdirectory(lib/myCPPCode)
,但它不起作用,因为我不知道要放入什么lib/myCPPCode/CMakeLists.txt
,并且我收到以下错误:
path/MyProject/src/MyProject/MyModule.cpp:2:10: fatal error: myCPPCode/MyCodeDefinitions.h: No such file or directory
2 | #include <myCPPCode/MyCodeDefinitions.h>
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
的内容lib/myCPPCode/CMakeLists.txt
如下:
cmake_minimum_required(VERSION 3.13)
project(myCPPCode)
add_library(myCPPCode MyCode.cpp)
我应该如何配置我的CMakeLists.txt
and lib/myCPPCode/CMakeLists.txt
?
先感谢您!