CMake变量:CMAKE_FIND_LIBRARY_SUFFIXES

CMAKE_FIND_LIBRARY_SUFFIXES是CMake中的一个变量,用于指定在查找库文件时使用的后缀列表。当CMake需要找到库文件时,它会尝试在这些后缀后添加库名来构建库文件的完整路径。例如,如果库名为mylib,并且CMAKE_FIND_LIBRARY_SUFFIXES设置为.so;.a,那么CMake会尝试查找mylib.somylib.a

这个变量通常在find_library命令中使用,例如:

cmake 复制代码
find_library(MYLIB_LIBRARY mylib HINTS /path/to/libs)

在这个例子中,CMake会在/path/to/libs目录下查找名为mylib.somylib.a的库文件。

如果没有设置CMAKE_FIND_LIBRARY_SUFFIXES,CMake会使用默认的后缀列表,这取决于平台和编译器。例如,在Linux上,默认的后缀列表可能包括.so.a.sl等。在Windows上,默认的后缀列表可能包括.dll.lib等。

你可以通过以下方式自定义CMAKE_FIND_LIBRARY_SUFFIXES

cmake 复制代码
set(CMAKE_FIND_LIBRARY_SUFFIXES ".dylib")

这将使得CMake只在指定的后缀(在这个例子中是.dylib)后查找库文件。

相关推荐
草莓熊Lotso2 天前
【CMake】静态库的编译、链接与引用全解析
linux·c语言·数据库·c++·软件工程·cmake
郝学胜-神的一滴2 天前
CMake 012:Linux 下动态库与可执行程序的单文件构建
linux·服务器·开发语言·c++·软件构建·cmake
皮皮木子3 天前
rl_locomotion 编译过程三
编译·强化学习·cmake·蒸馏
郝学胜_神的一滴3 天前
CMake 012:Linux 下动态库与可执行程序的单文件构建
c++·cmake
皮皮木子3 天前
rl_locomotion 编译过程四
编译·cmake
dozenyaoyida5 天前
RISC-V嵌入式开发:彻底解决“undefined reference to isatty“错误全攻略
经验分享·c·cmake·嵌入式开发·isatty·没有定义问题
shanql6 天前
CMake笔记:Linux下常规使用
cmake
zh_xuan7 天前
Android JNI 动态注册:获取系统内存页大小
android·cmake·jni·ndk·动态注册·内存页大小
雪靡8 天前
Visual Studio 2026 优雅的给Cmake设置大代理
c++·ide·cmake·visual studio
郝学胜-神的一滴9 天前
CMake 011:跨平台动态库编译
开发语言·c++·嵌入式硬件·qt·程序人生·cmake·liunx