如何将外部库与 CMake 一起使用
How to use external libraries with CMake?
我的项目结构看起来像这样,我想使用 ext 上的库派生我的类到 inc 文件夹并在 main.cpp 上使用它们。CMakeLists.txt的骨架应该是什么样子的?
.
├── CMakeLists.txt
├── ext
│ ├── abseil-cpp
│ └── SDL2-2.0.9
├── inc
├── src
└── main.cpp
如果您想将库构建为项目的一部分,是的,只要外部库基于 Cmake 并且您针对您的项目适当地修改其 Cmake 文件,就可以工作。
但是,CMake 有一个名为 ExternalProject
的模块,旨在帮助您管理第三方依赖项。您可以在此网站上找到有关它的非常详尽的文章。 ExternalProject
包含创建自定义目标以驱动外部项目的下载、更新/修补、配置、构建、安装和测试步骤所需的一切。
还有其他选择,我更喜欢使用预构建的库来减少构建时间。(CI 服务的运行时间越短,成本就越低)所以我越来越喜欢柯南,一个开源的、去中心化的、多平台的。包管理器最常用于C++。它还具有出色的Cmake集成,因此非常适合我的工作流程。
相关文章:
- 将--whole archive链接器选项与CMake和具有其他库依赖项的库一起使用
- 如何将GTest与CMake一起使用?遵循谷歌指南时的链接问题
- 如何将动态链接库与CMake一起使用
- SSE 标志应该如何与现代 CMake 一起添加?
- 将外部C++库与 CMake 一起使用时出错
- 如何将 Pybind11 与 CMAKE 一起使用以链接 2 个模块
- 如何将 c++20 模块与 CMake 一起使用
- 如何将编译的 wxwidgets 与 cmake 一起使用
- 当它们不与GCC和CMAKE一起使用时,如何解析未定义的引用
- 如何将库与CMAKE一起包含在OSX捆绑包中
- 当将QT创建者与CMAKE一起使用时,为什么我不必手动链接MSVC库
- 将特征与cmake一起使用
- 在将QT与Cmake一起使用时解决链接错误
- 如何将外部库与 CMake 一起使用
- 如何与CMAKE一起使用VS 2017编译的Boost Filesystem库
- 如何将GCOV与Cmake一起使用
- 如何将OpenCV的测试框架与CMake一起使用?
- 如何将PJSIP库与CMake一起使用
- 如何将该工具与 CMake 一起使用'Include What You Use'来检测未使用的标头?
- 将预编译的头与CMake一起使用