转载请注明出处:
http://www.cnblogs.com/sysuzyq/p/6183568.html
By 少侠阿朱
摘要:
本文主要讲述如何使用opencv静态库进行编译,生成脱离opencv环境可执行.exe文件。
实现的效果:
此方法生成的exe文件在其他没有配置openCV环境的电脑上可直接执行。
使用到的工具:
openCV2.411
VS2013
debug模式下编译流程如下:
首先:项目的debug属性表
修改框中项目“$(OPENCV)\x86\vc12\lib;$(LibraryPath)”为静态库位置“$(OPENCV)\x86\vc12\staticlib;$(LibraryPath)”
其次:“C/C++”-“代码生成”-“运行库”改为“多线程调试 (/MTd)”,这个'd'表示debug模式。
然后:“连接器”-“输入”-“附加依赖项”中,在最开头加入:
IlmImfd.lib
libjasperd.lib
libjpegd.lib
libpngd.lib
libtiffd.lib
zlibd.lib
libjasperd.lib
libjpegd.lib
libpngd.lib
libtiffd.lib
zlibd.lib
最后:
重新生成解决方案。记得选择debug模式。
则编译成功。
release模式下编译流程如下:
修改release的属性表
大家发现这一项是和debug属性表共享的,已经是“staticlib”:
然后大家会发现运行库这一项也是共享的,之前设置为“MTd”,现在我们需要改为“MT”。切记这里改了,则编译的时候一定要release模式,不然出错
然后是:
“连接器”-“输入”-“附加依赖项”中,在最开头加入:
IlmImf.lib
libjasper.lib
libjpeg.lib
libpng.lib
libtiff.lib
zlib.lib
libjasper.lib
libjpeg.lib
libpng.lib
libtiff.lib
zlib.lib
注意这里和debug模式的不同,所有库都是没有'd'结尾的。
最后:编译选择release模式。
编译通过。成功生成release版本的exe