特征,制造和cmake之间的问题(可能是cmake错误)
Issue between Eigen, make and cmake (probably a cmake mistake)
我在尝试构建一点代码时遇到了问题。(我在Linux上(
为简单起见:
这是我在我的 Position.h 文件中得到的内容(在真正开始时,我认为下一个不是解决这个问题所必需的(:
#include <Eigen/Dense>
这是我的CMakeLists.txt:
project(p)
include_directories("./Eigen")
add_executable(
p
Eigen/Dense
Position.h # wich requires Eigen/Dense
Position.cpp
#other files
)
在项目目录中有两个目录:build 和 Eigen
要创建生成文件,我进入构建目录,然后键入 cmake ..
。创建了一个生成文件,但是当我尝试make
时出现错误:
/path/to/Position.h:30:23: fatal error: Eigen/Dense: no such file or directory.
Position.h来自从github获取的代码(如果需要,我可以给你链接(。
拜托,你能给我一个搜索的方向,或者如果你发现有什么问题,我的错误是什么
谢谢!
您不能在 add_executable()
中将标头依赖项作为源文件。如果Position.h
确实搜索Eigen/Dense
您可能只需要include_directories(.)
。
project(p)
include_directories(.)
add_executable(
p
Position.cpp
Position.h
#other files
)
但是你为什么不使用find_module()
呢?
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}")
find_package(Eigen3 REQUIRED)
include_directories(${EIGEN3_INCLUDE_DIR})
参考
- 无法使用 CMake 找到特征 3
相关文章:
- libssh 的函数在构建 libssh 时无法在 Qt 和 cmake 错误中找到
- FindPackageHandleStandardArgs.cmake:137 的 CMake 错误(消息):找不到 Boost (缺少:正则表达式)(找到合适的版本"1.72.0",
- CMake 错误"源似乎不包含 CMakeLists.txt",路径/库连接问题
- CMake 错误 - 目标 foo INTERFACE_SOURCES属性包含在源目录中以前缀为前缀的路径
- CMake 错误:链接器命令失败,退出代码为 1 和 cpp.o 文件
- CMake 错误,在构建 VTK 'INSTALL'项目
- C++ ZBar cmake 错误"找不到文件"时包括
- 使用cmake错误链接boost日志
- Cmake 错误:无法为目标指定链接库
- CMake / 错误时链接 libfreeimage / libtiff.
- CMake 错误: "add_subdirectory not given a binary directory"
- Qt Cmake 错误编译"GuiSupportQt not found"
- 特征,制造和cmake之间的问题(可能是cmake错误)
- CMake 错误:ROOT 应构建为源外构建
- cmake 错误 当文件由EXEC_PROGRAM生成时找不到源文件
- CMake 错误:无法确定目标的链接语言
- Mysqlcppconn8 和 cmake 错误在 Linux 中构建
- 构建cpprestsdk时的cmake错误
- CMAKE错误:C 11不支持Mac High Sierra
- 如何修复CMake错误:源目录