更新时间:2023-02-03 12:55:25
在搜索库时迭代库名称和目录之间的确定顺序。例如,根据文档,
当NAMES选项提供多个值时,默认情况下,此命令将一次考虑一个名称,并搜索每个目录。
也就是说,库位于 dir1 / name2
和 dir2 / name1
find_library(MYLIB NAMES name1 name2 PATHS dir1 dir2)
message($ {MYLIB} )
将打印 dir2 / name1
。 / p>
指定 NAMES_PER_DIR 选项反转选项:
find_library(MYLIB NAMES name1 name2 NAMES_PER_DIR PATHS dir1 dir2)
message($ {MYLIB})
将打印 dir1 / name2
。
尝试库的前缀和后缀时,事情是不同的:
每个库nam给予NAMES选项的e被首先考虑为库文件名,然后考虑与平台特定的前缀(例如, lib)和后缀(例如.so)。