如何将CMAKE\u FIND\u LIBRARY\u后缀设置为nothing
我在编写查找脚本时遇到了一个问题。出于某种原因,自动追加后缀不起作用:只找到扩展名为如何将CMAKE\u FIND\u LIBRARY\u后缀设置为nothing,cmake,Cmake,我在编写查找脚本时遇到了一个问题。出于某种原因,自动追加后缀不起作用:只找到扩展名为.dylib的库文件,而没有找到扩展名为.a或根本没有扩展名的文件 通过实际实验,我将CMAKE_FIND_LIBRARY_后缀设置为空值,然后恢复该值。然而,这有以下影响: 首次运行cmake时,生成失败,出现“cmake错误:未设置错误要求的内部cmake变量,可能无法正确生成cmake。缺少的变量是cmake\u FIND\u LIBRARY\u后缀” 当我以同样的方式第二次运行cmake时,生成就成功了
.dylib
的库文件,而没有找到扩展名为.a
或根本没有扩展名的文件
通过实际实验,我将CMAKE_FIND_LIBRARY_后缀设置为空值,然后恢复该值。然而,这有以下影响:
set(CMAKE_FIND_LIBRARY_SUFFIXES ";")
与空值不同,此赋值将通过可能的健全性检查,如
if(CMAKE\u FIND\u LIBRARY\u后缀)
,这可能存在于CMAKE代码中,因为它报告“错误要求内部CMAKE变量未设置”。您可以尝试将CMAKE\u FIND\u LIBRARY\u后缀的值设置为代码>(单分号)。从技术上讲,这意味着一个包含两个空值的列表,但它可能会通过一致性检查,如if(CMAKE\u FIND\u LIBRARY\u后缀)
。请将其添加为答案。我愿意接受