使用CMake生成OpenCV库时的步骤说明
Clarification of steps while generating of OpenCV libraries using CMake
我已经使用在线教程使用CMake生成了几次OpenCV库,尽管我没有完全理解这个过程。以下是我遵循的过程
- 配置CMake以构建OpenCV二进制文件(例如,使用QT、TBB、不使用CUDA、OpenCL等)
- 使用CMake生成二进制文件
- 构建二进制文件的文件夹中有许多
.sln
文件。我打开文件OpenCV.sln
,并为Debug和Release配置运行项目ALL_BUILD
- 创建了一个新文件夹。
bin
,其中包含库(用于发布和调试版本的.lib
和.dll
- (可选)有时我也会构建名为
INSTALL
的项目(在同一个解决方案中),只是出于好奇。我注意到它创建了另一个文件夹,其中包含的库文件与OpenCV包附带的预构建库的模式几乎相同。有趣的是,如果我链接到install
文件夹或bin
/lib
文件夹中的库,我在MSVC或Qt中的程序也同样有效
我的问题是
install
溶液的作用是什么install
解决方案生成的库与bin
和lib
文件夹中的库有何不同- 构建
ALL_BUILD
解决方案时为什么未构建install
解决方案
install
解决方案的功能是什么
它将构建输出打包/收集到一组可移植的库和头中,您知道这些库和头可以在您的电脑或其他机器中移动。
install
解决方案生成的库与bin
和lib
文件夹中的库有何不同
它们不是。您可能首先构建了共享库,然后(通过使用cmake重新配置)构建了静态库,但目标安装只安装您当前选择的库(在您的cmake gui中?)
- 为什么在生成
ALL_BUILD
解决方案时未生成install
解决方案
install
是cmake的一个特殊目标。事实上,默认情况下,install
触发all
,并且只有在all
成功终止时才实际执行,但反之亦然。
相关文章:
- 如何创建一个CMake变量,除非显式重写,否则使用默认值
- 使用C++库在Android项目中修改gradle中的cmake参数,用于插入指令的测试
- CMake-按正确顺序将项目与C运行时对象文件链接
- 使用CMake创建QML插件
- cmake如何在fedora工作站中找到boost静态库包
- 使用CMake检测支持的C++标准
- CMake项目Boost库错误:Boost/config/compiler/gcc.hpp:165:10:致命错误:cs
- 如何使用CMake编译.proto文件来生成.grpcp.pb.cc和.grpc.pb.h文件
- cmake在我的项目中所需的所有静态库都不成功
- 在CMakeLists.txt的安装功能中使用.cmake文件有什么用
- 无法链接 CMake 中的本地库
- libssh 的函数在构建 libssh 时无法在 Qt 和 cmake 错误中找到
- 如何在Ubuntu中使用cmake设置qt4
- 使用cmake从源代码构建MySQL连接器/C++失败(与以前的声明冲突)
- 为什么 cmake 许可证<>样式不包括?
- cmake更新缓存的变量
- 将--whole archive链接器选项与CMake和具有其他库依赖项的库一起使用
- 使用CMake生成OpenCV库时的步骤说明
- CMake,当使用FindFoo.cmake或FooConfig.cmake(以及其他说明)时
- CMAKE 中的操作系统特定说明:操作方法