Cmake'find_libraries',NAMES关键字不起作用

时间:2017-09-15 13:06:32

标签: c++ cmake

第一次在这里的用户如此轻松温柔。 我有使用cmake链接库的问题。 我正在研究更大项目的一部分。每个部分都有自己的构建系统,但可以使用其他部分的库。 Eample项目树:

+-- Project
|   +-- Part1
|       +-- Lib1
|           +-- libLib1.a
|       +-- Lib2
|           +-- libLib2.a
|   +-- Part2
|       +-- Lib3
|           +-- libLib3.a
|       +-- Lib4
|           +-- libLib4.a
|   +-- MyPart
|       +-- Lib5
|           +-- libLib5.a
|           +-- Lib1.cpp
|           +-- CMakeLists.txt
|       +-- main.cpp
|       +-- CMakeLists.txt

我尝试将我的部分MyPart链接到库Lib1,Lib2,Lib4,Lib5。

使用Lib5没有问题,因为它是使用相同的cmake树构建的。 但是如何链接外部库? 我选择使用 find_library 来获取其他所需库的路径,例如:

find_library(LIB1_LIBRARY
             NAMES Lib1
             PATH ../Part1/Lib1/)

然后使用 target_link_libraries 。不幸的是,由于 find_library ,我得到 LIB1_LIBRARY-NOTFOUND 。 但是如果要删除关键字NAMES,则所有关键字都按预期开始工作。

这里有什么问题?还有更好的策略来链接我的构建系统树之外的库。

提前谢谢

0 个答案:

没有答案