一 需要的工具文件夹里有,opencv你自己已经安装好。

二、Cmake编译

1、 安装Cmake 双击安装即可,只有一步要注意,

opencv 编译通过 没有生成lib库 opencv怎么编译_2d

在这步选第二项。

2、在你安装的opencv路径下,例如“在Opencv文件夹下建立一个newbuild文件夹(名字随意),比如我的OPencv装在D:\opencv3.3\opencv。则可以新建一个文件夹,这样就有了D:\opencv3.3\opencv\newbuild”。

3、 将Opencv_contrib_3.3.0解压,放到任意位置,最好没有中午路径名,这个路径一会要用到。

4、 打开刚才安装的Cmake-gui,左下角开始,最近添加处找。

opencv 编译通过 没有生成lib库 opencv怎么编译_2d_02

打开之后如图,cmake第一行输入的是opencv的源码即opencv的source文件,第二行是编译好的文件放置处即newbulid文件夹。cmake编译过程主要有两次编译,一次中途加载设置。

···(1)点击Tools-Configure进入VS选择。选择下图选的vs2015,点击finish.

点击Configure,

opencv 编译通过 没有生成lib库 opencv怎么编译_2d_03

(2)  上一步之后,应该得等待一段时间,会出现下图;在图中标的地方选择你下载解压后的contrib的modules文件地址。点击Generate,等待完成即可

opencv 编译通过 没有生成lib库 opencv怎么编译_2d_04

 

 

三、vs2015编译

(1)之后进入newbuild文件下打开OPENCV.sln,进入VS2015环境。选则Debug   x64模式,右键解决方案,选择重新生成解决方案。进行这一步之前最好关闭360安全卫士、360杀毒之类的软件,不然会导致编译不成功(原因不知道,反正我的360是不断弹出文件执行误操作,阻止编译了)。然后继续等待10分钟左右。即可编译成功。

opencv 编译通过 没有生成lib库 opencv怎么编译_解决方案_05

 

(2)全部生成成功之后,找到CMakeTargets下的INSTALL,右键INSTALL按如图所示选择即可(Debug下编译生成一次得到尾号带d的dll,Release下编译生成一次得到不带d的dll,可分别生成一次,只调试的话生成Debug即可)。然后newbuild文件夹下的install即成了新的包含了contrib模块的opencv库。之后便可以进行VS2015+opencv环境配置。如下图:

opencv 编译通过 没有生成lib库 opencv怎么编译_解决方案_06

 

(3)VC++ 包含目录、库目录、链接器下的附加项,这部就是在具体的项目下配置。

opencv 编译通过 没有生成lib库 opencv怎么编译_ide_07

包含目录:看你自己那个路径,比如D:\opencv3\opencv\newbuild\install\include

库目录:看你自己那个,比如 D:\opencv3\opencv\mybuild\install\x64\vc14\lib
D:\opencv3\opencv\mybuild\install\x64\vc14\staticlib

这两个可能只有一个。

依赖项:添加lib项,现在是Debug模式下,添加D:\opencv3\opencv\mybuild\install\x64\vc14\lib

文件夹下的.*lib的所有名字,带扩展名.lib,最后应用,确定即可。

opencv 编译通过 没有生成lib库 opencv怎么编译_ide_08

 

四、WIN10 PATH设置

例如  添加新变量:install:x64文件下的bin文件。路径为:D:\opencv3.3\mybulid\install\x64\vc14\bin

(更改变量后最好重启)

 

附录:

这个是我在网上找到的lib文件但是是opencv3.2.0

那你对比一下,你需要把330换成330

opencv_aruco330d.lib
opencv_bgsegm330d.lib
opencv_bioinspired330d.lib
opencv_calib3d330d.lib
opencv_ccalib330d.lib
opencv_core330d.lib
opencv_datasets330d.lib
opencv_dnn330d.lib
opencv_dpm330d.lib
opencv_face330d.lib
opencv_features2d330d.lib
opencv_flann330d.lib
opencv_fuzzy330d.lib
opencv_highgui330d.lib
opencv_imgcodecs330d.lib
opencv_imgproc330d.lib
opencv_line_descriptor330d.lib
opencv_ml330d.lib
opencv_objdetect330d.lib
opencv_optflow330d.lib
opencv_phase_unwrapping330d.lib
opencv_photo330d.lib
opencv_plot330d.lib
opencv_reg330d.lib
opencv_rgbd330d.lib
opencv_saliency330d.lib
opencv_shape330d.lib
opencv_stereo330d.lib
opencv_stitching330d.lib
opencv_structured_light330d.lib
opencv_superres330d.lib
opencv_surface_matching330d.lib
opencv_text330d.lib
opencv_tracking330d.lib
opencv_video330d.lib
opencv_videoio330d.lib
opencv_videostab330d.lib
opencv_xfeatures2d330d.lib
opencv_ximgproc330d.lib
opencv_xobjdetect330d.lib
opencv_xobjdetect330d.lib