基础性文章,记录了如何使用Visual Studio 2019 编译opencv 4生成32bit库的过程
参考:
- https://www.cnblogs.com/mangoroom/p/11000030.html
- https://blog.youkuaiyun.com/anyisoft/article/details/104044106
1 - msvc
1.1 - 官网下载
官网预编译的opencv4仅有msvc 64bit库可用,想要使用msvc 32bit库需要自行编译。
从官网下载安装包https://opencv.org/releases/。
安装完毕后,在系统环境变量中添加 …\build\x64\vc15\bin 路径
这里添加bin路径导PATH环境变量中,是为了让你编译的使用Opencv库的exe文件能够通过PATH环境变量找到所需的运行库dll文件。如果选择不添加到PATH环境变量,需要将相关dll文件放置到程序运行目录下,否则你的程序不能正常的运行。vs中可以使用“编译后操作”,Qt Creator 中可以“添加自定义编译运行步骤”,来执行自动化的文件复制到指定目录下操作。
1.2 - 手动编译
准备工作:
- 从opencv官网 Releases: https://opencv.org/releases/ 下载源代码
- 下载安装cmake,记得安装时勾选将软件添加到系统环境变量
- 下载安装Visual Studio,2019 community版本即可
这里我们将源代码放到 opencv-4.4.0/source 目录下,再新建一个空文件夹用于存放编译产生的文件 opencv-4.4.0/build。
打开cmake,选择源代码路径与编译路径
点击 Configure,弹出配置对话框。选择使用 Visual Studio 2019 。如果需要生成32bit的库,在这里修改选项 Win32,默认是64bit,即 x64
点击Finish,第一次点击Configure,生成索引,在生成的变量索引中勾选 BUILD_opencv_world
再次点击Configure,确保没有错误,点击Generate,在 opencv-4.4.0/build 下生成VS2019工程文件 OpenCV.sln。
打开该工程,在顶部选择 Release ,在右侧解决方案资源管理器中找到 CMakeTargets/ALL_BUILD 选项,右键生成。生成完毕后在右侧解决方案资源管理器中找到 CMakeTargets/INSTALL 选项,右键生成。
生成完毕后在 opencv-4.4.0 / build / install 目录下可以看到我们生成的库文件与头文件
在 opencv-4.4.0 \ build \ install \ x86 \ vc16 \ lib 下是程序需要使用的lib文件,在vs编译时使用release方式可以得到 opencv_world440.lib 与 opencv_world440d.lib,其中末尾带d的是在程序debug方式编译运行时使用的。
最后,按照1.1中步骤将新生成的库的bin添加至环境变量即可。