VS2015编译OpenCV2.4.13源码及配置

  1. 预备工作:安装好VS2015、下载opencv2.4.13、安装好cmake3.8.1(或其它版本)

    Note:VS2015与VS2017不要共存,否则cmake编译时会出错(坑啊~)

  2. 解压或双击opencv2.4.13.exe,解压出其中的sources。

  3. 打开cmake:
    (1)选择source code目录(输入)和build the binaries目录(输出)。
    (2)点击Configure,选择编译器,这里选vs2015即可。 (3)勾选需要编译的选择,再次点击Configure。

    如果安装了cuda,但Configure时报错:

    1. 可以勾选掉WITH_CUDAWITH_CUFFT,再点击Configure。
    2. C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\extras\visual_studio_integration\MSBuildExtensions下的4个文件复制到C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V140\BuildCustomizations目录下,再点击Configure。(小提示:若选择编译cuda,等待会非常漫长)

    勾选掉WITH_CUDA和WITH_CUFFT

    (3)看到“Configure done”后,点击Generate。看到“Generating done”即可。

    这里写图片描述

  4. 关闭cmake-gui,进入build的输出目录,用VS2015打开OpenCV.sln开始编译。
    (1)先选择编译方式:“Release”还是“Debug”(下面以Release为例);平台Win32(如果想编译x64平台,可能需要再次cmake)。
    (2)右键点击“ALL_BUILD”,将其设为“启动项目”:先打开“配置管理器”,勾选“INSTALL”等全部选项,然后Ctrl+F5编译。
    配置管理器
    要勾选INSTALL
    (3)经过几分钟,编译成功。因为没有可执行文件,所以报错很正常。
    编译成功 可忽略报错
    (4)右键点击“INSTALL”,将其设为“启动项目”,然后Ctrl+F5编译。
    这里写图片描述

  5. 至此,编译结束,编译的结果在build输出目录\install目录中(F:\OpenCV\build3.2\install)。

  6. 现在,可以开始配置OpenCV环境了,配置过程可参见:http://blog.csdn.net/CosmosHua/article/details/72183624
    (1)将其中的目录 X:\opencv\build 全部替换为 F:\OpenCV\build3.2\install 即可。
    (2)同时,链接器->输入->附加依赖项需改为:
    Release版:
    opencv_calib3d2413.lib
    opencv_contrib2413.lib
    opencv_core2413.lib
    opencv_features2d2413.lib
    opencv_flann2413.lib
    opencv_gpu2413.lib
    opencv_highgui2413.lib
    opencv_imgproc2413.lib
    opencv_legacy2413.lib
    opencv_ml2413.lib
    opencv_nonfree2413.lib
    opencv_objdetect2413.lib
    opencv_ocl2413.lib
    opencv_photo2413.lib
    opencv_stitching2413.lib
    opencv_superres2413.lib
    opencv_ts2413.lib
    opencv_video2413.lib
    opencv_videostab2413.lib
    Debug版:
    opencv_calib3d2413d.lib
    opencv_contrib2413d.lib
    opencv_core2413d.lib
    opencv_features2d2413d.lib
    opencv_flann2413d.lib
    opencv_gpu2413d.lib
    opencv_highgui2413d.lib
    opencv_imgproc2413d.lib
    opencv_legacy2413d.lib
    opencv_ml2413d.lib
    opencv_nonfree2413d.lib
    opencv_objdetect2413d.lib
    opencv_ocl2413d.lib
    opencv_photo2413d.lib
    opencv_stitching2413d.lib
    opencv_superres2413d.lib
    opencv_ts2413d.lib
    opencv_video2413d.lib
    opencv_videostab2413d.lib

猜你喜欢

转载自blog.csdn.net/cosmoshua/article/details/72523673