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)后查找库文件。

相关推荐
D.不吃西红柿5 天前
CPM.cmake轻量级包管理器
c++·cmake·cpm.cmake
十五年专注C++开发19 天前
CMake基础: 在release模式下生成调试信息的方法
linux·c++·windows·cmake·跨平台构建
kimicsdn20 天前
opentelemetry-demo currency cpp 项目编译流程分享
c++·cmake·libprotobuf-dev
十五年专注C++开发22 天前
CMake进阶:模块模式示例FindOpenCL.cmake详解
开发语言·c++·cmake·跨平台编译
番茄灭世神23 天前
基于VScode搭建GD32开发环境
arm开发·vscode·单片机·cmake·gd32
l1t25 天前
在arm64 Linux系统上编译tdoku-lib的问题和解决
linux·运维·服务器·c语言·cmake
番茄灭世神25 天前
基于VScode的C/C++环境搭建
vscode·cmake·gcc·c\c++·llvm·工具链搭建
Two_brushes.1 个月前
Cmake中寻库文件的路径
开发语言·c++·cmake
十五年专注C++开发1 个月前
CMake基础:foreach详解
linux·c++·windows·cmake·跨平台编译
wysaid1 个月前
一个 VS Code 插件 (cc-format):让你的 CMake 代码拥有 CLion 般的格式化体验
cmake