【发布时间】:2016-09-30 18:19:16
【问题描述】:
我是 Cmake 新手,正在尝试构建一个需要可选包 (libspectre) 的 KDE 项目 (okular)。我进行了默认的 make install,库文件位于“/usr/lib/x86_64-linux-gnu”位置。
在生成器/CMakeLists.txt 中,我尝试将“macro_optional_find_package(LibSpectre)”替换为以下内容:
find_library(LIBSPECTRE_LIBRARY NAMES libspectre PATHS "/usr/lib/x86_64-linux-gnu/")
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(LibSpectre DEFAULT_MSG LIBSPECTRE_LIBRARY)
似乎找不到 libspectre 库。我尝试用 HINTS 替换 PATHS,并在 NAMES 之后将 'libspectre' 更改为 'spectre'。但它似乎不认识。
感谢任何帮助!
【问题讨论】:
-
您要查找的库文件(在
/usr/lib/x86_64-linux-gnu/下)的确切名称(带有扩展名)是什么?你确定,给定的find_library()调用被执行了吗? (尝试在其后添加message()呼叫)。当您为自己构建项目时,最好在 CMake 缓存中设置LIBSPECTRE_LIBRARY变量。无需为此修改脚本。 -
您好,库文件的名称是 libspectre.so.1。它是 libspectre.so.1.1.7 的符号链接。我会尝试你的建议。谢谢!
标签: cmake