如何生成能在没有安装opencv库及vs2010环境的电脑上运行的exe文件

项目基本算法已经完成,甲方需要一个可以运行的demo。目前,程序能在自己的电脑上正常运行。移植到其他win7系统上,运行失败。

寻找各种解决办法,baidu找到两个办法:

1.使用静态链接的方法,这种生成的exe太大,放弃。

2.将对应需要的dll拷贝到exe的执行目录下,这种虽然文件多,但是易操作,选择。

我的环境windows7 + Visual Studio 2010 + opencv2.4.7,各种基本的配置省略。

1.打开项目配置页->c/c++->代码生成->运行库,设置成多线程调试DLL(/MD)(release版的程序选择MD,这一步是为了添加程序运行需要的运行库)

2.F7生成exe,然后把对应的dll库拷贝到exe的文件夹下面。将此文件夹作为一个整体发送给甲方。(具体需要拷贝哪些dll库可以使用visual studio的dependents查看,方法如下)

使用dependents查看exe所需要的dll库:

1.开始->所有程序->Microsoft Visual Studio 2010 ->Visual Studio Tools->Visual Studio 2010 命令提示.

2.跳转到exe所在根目录下,输入dumpbin /dependents stabilization_KLT.exe,就会有如图所示结果。

我们需要添加libgsl.dll和四个opencvdll库,除此还需额外添加opencv_ffmpeg247.dll,不然总提示读取视频失败。下面的几个DLL文件在上面步骤一修改运行时库就已经添加了。

实测在其他win7中可以正确运行。

 

posted @ 2016-07-01 11:27  BestWangJie  阅读(2681)  评论(0编辑  收藏  举报