基于MFC的OpenCV程序的静态编译

版本为vs2013+opencv2.4.9

1、若在创建MFC程序的时候没有选择在静态库中使用MFC。在(工程属性->常规->MFC的使用)中设置,如图所示。
这里写图片描述

2、选择利用静态库编译,一般都是用于发布的,选择使用release版本,接着设置代码生成,设置如图所示。
这里写图片描述
release版本的,将运行库设置成(多线程(/MT))形式。

**3、**VC++目录设置,其中包含目录不变,还是为:(其中的路径需要改成自己电脑中安装的OpenCV的路径)

D:\opencv\build\include
D:\opencv\build\include\opencv
D:\opencv\build\include\opencv2

库目录改为:
D:\opencv\build\x86\vc12\staticlib
staticlib为静态库,如图所示。
这里写图片描述

4、依赖项设置,附加内容为
nafxcw.lib
opencv_calib3d249.lib
opencv_contrib249.lib
opencv_core249.lib
opencv_features2d249.lib
opencv_flann249.lib
opencv_gpu249.lib
opencv_highgui249.lib
opencv_imgproc249.lib
opencv_legacy249.lib
opencv_ml249.lib
opencv_nonfree249.lib
opencv_objdetect249.lib
opencv_ocl249.lib
opencv_photo249.lib
opencv_stitching249.lib
opencv_superres249.lib
opencv_ts249.lib
opencv_video249.lib
opencv_videostab249.lib
zlib.lib
IlmImf.lib
libjasper.lib
libjpeg.lib
libpng.lib
libtiff.lib
vfw32.lib
comctl32.lib

注意其中标记红色的部分,具体如图所示:
这里写图片描述
这些设置完成了,运行发布的EXE文件在没有安装vs2013和OpenCV的电脑中都可以运行。

猜你喜欢

转载自blog.csdn.net/lly_117/article/details/81061312