linux cmake 怎么添加现有静态库
时间: 2023-07-08 12:55:41 浏览: 90
在 CMake 中,可以使用 `target_link_libraries()` 命令来链接现有的静态库。
1. 如果该静态库已经安装在系统目录中,可以使用 `find_package()` 命令来查找该库。例如,如果要链接 OpenSSL 库,可以使用以下命令:
```
find_package(OpenSSL REQUIRED)
```
2. 在找到该库之后,可以使用 `target_link_libraries()` 命令来链接该库。例如,如果要将 OpenSSL 库链接到可执行文件中,可以使用以下命令:
```
target_link_libraries(my_executable OpenSSL::SSL OpenSSL::Crypto)
```
其中,`my_executable` 是要链接该库的可执行文件名称,`OpenSSL::SSL` 和 `OpenSSL::Crypto` 是 OpenSSL 库的 CMake 目标名称。
3. 如果该静态库不在系统目录中,可以使用 `link_directories()` 命令来指定该库的搜索路径,并使用 `target_link_libraries()` 命令来链接该库。例如,如果要链接 `/path/to/libssl.a` 和 `/path/to/libcrypto.a` 两个静态库,可以使用以下命令:
```
link_directories(/path/to)
target_link_libraries(my_executable ssl crypto)
```
其中,`my_executable` 是要链接该库的可执行文件名称,`ssl` 和 `crypto` 是静态库文件的名称(去掉扩展名)。
阅读全文