如何添加对 CMakeLists.txt 的依赖

如何添加对 CMakeLists.txt 的依赖

我正在开发一个已经构建的共享库。

当我运行时,cmake -C $ILCSOFT/ILCSoft.cmake输出在某个时刻显示:

-- Check for FastJet (3.1.2)
-- Check for FastJet_LIBRARIES: fastjet
-- Check for FastJet_FASTJET_LIBRARY: /cvmfs/foo...bar/FastJet/3.1.2/lib/libfastjet.so -- ok
...
CMAKE_PREFIX_PATH =
-- /cvmfs/foo...bar/v01-17-09/FastJet/3.1.2;

但是当我运行make install我的 cc 文件时失败#include "fastjet/ClusterSequence.hh"

这意味着我没有正确设置我的 cmake。现在我正在尝试通过在我的中执行以下操作来添加我的 fastjet 依赖项CMakeLists.txt

FIND_PACKAGE( FastJet )
LINK_LIBRARIES( FastJet_LIBRARY )

没有抛出错误,但我无法导入我想要的东西。

我认为我不理解 cmake、make 和 cpp 导入。有人可以帮助我吗?

如何将这么大的库导入到我的 cmake 中?

答案1

如果它在包含阶段出现问题,那么它会找到问题所在的包含目录,而不是编译库的实际位置。从cmake 文档,因此请尝试添加库标头所在的位置。

包含目录

将包含目录添加到构建中。

include_directories([之后|之前] [系统] dir1 [dir2 ...])

将给定目录添加到编译器用来搜索包含文件的目录中。相对路径被解释为相对于当前源目录。

相关内容