VS2010+OpenCV 项目生成EXE文件如何在其他电脑上直接运行

我的毕业设计做的是图像处理,是用VS2010+OpenCV完成的,C++&MFC。(我的是64位的,所以前后一致,全部选择都是64位的,当然也可以是32位的,前后要一致)

项目做完之后,导师建议能不能做成可执行文件,在其他没有安装VS和OpenCV的机子上直接运行,因为之前没有考虑过这个问题,所以当时只是在自己本地可以运行就行,现在要重新考虑这个问题,中间遇到了很多问题,花费了一个下午和一个晚上的时间,看了很多相关的博客,终于解决了这个问题,也希望对遇到相关问题的人有所帮助。

准备材料 :VS2010+OpenCV 2.4.10

(1)安装软件。安装VS2010。将下载的OpenCV解压到D:\opencv。

(2)配置环境变量。计算机>属性>高级系统设置>环境变量>新建,新建一个用户变量,如变量名:Path,变量值:D:\opencv\build\x64\vc10\bin。

(3)接下来就是我们正式的工作内容了。

  打开VS2010,文件-》新建-》项目-》MFC应用程序,建立Test项目。点击确定,进入MFC应用程序向导,点击下一步,勾选“基于对话框”“在静态库中使用MFC”,取消“使用 Unicode库 ”。点击完成。

(4)右键Test,打开属性。

debug模式下:

VC++目录->包含目录,编辑,加入D:\opencv\build\include

D:\opencv\build\include\opencv

D:\opencv\build\include\opencv2

VC++目录->库目录,编辑,加入D:\opencv\build\x64\vc10\staticlib(这个很重要)

C/C++->代码生成->运行库,改成“多线程调试(/MTd)”

链接器->输入->附加依赖项,编辑加入下列项:

vfw32.lib
comctl32.lib
zlib.lib
libjasper.lib
libjpeg.lib
libpng.lib
libtiff.lib
IlmImf.lib
opencv_calib3d2410.lib
opencv_contrib2410.lib
opencv_features2d2410.lib
opencv_core2410.lib
opencv_flann2410.lib
opencv_gpu2410.lib
opencv_highgui2410.lib
opencv_imgproc2410.lib
opencv_legacy2410.lib
opencv_ml2410.lib
opencv_nonfree2410.lib
opencv_objdetect2410.lib
opencv_ocl2410.lib
opencv_photo2410.lib
opencv_stitching2410.lib
opencv_superres2410.lib
opencv_ts2410.lib
opencv_video2410.lib
opencv_videostab2410.lib

Release模式下:

VC++目录->包含目录,编辑,加入D:\opencv\build\include

D:\opencv\build\include\opencv

D:\opencv\build\include\opencv2

VC++目录->库目录,编辑,加入D:\opencv\build\x64\vc10\staticlib(这个很重要)

C/C++->代码生成->运行库,改成“多线程(/MT)”

链接器->输入->附加依赖项,编辑加入下列项:

vfw32.lib
comctl32.lib
zlib.lib
libjasper.lib
libjpeg.lib
libpng.lib
libtiff.lib
IlmImf.lib
opencv_calib3d2410.lib     (注意,没有d)
opencv_contrib2410.lib
opencv_features2d2410.lib
opencv_core2410.lib
opencv_flann2410.lib
opencv_gpu2410.lib
opencv_highgui2410.lib
opencv_imgproc2410.lib
opencv_legacy2410.lib
opencv_ml2410.lib
opencv_nonfree2410.lib
opencv_objdetect2410.lib
opencv_ocl2410.lib
opencv_photo2410.lib
opencv_stitching2410.lib
opencv_superres2410.lib
opencv_ts2410.lib
opencv_video2410.lib
opencv_videostab2410.lib

点击“应用”,“确定”。

(5)如果大家全部用的是32位,现在就结束了,但是我的全部是64位的,所以还需要新建X64平台。需要注意一点,如何是64位的,只能运行在64位机子上。

(6) 然后就全部结束了,大家可以尝试着编写代码了。可以在项目里面找到Release->Test.exe,拷贝出来,就可以在其他机子上运行了。如何大家还有什么问题,欢迎交流。

时间: 2024-11-02 15:15:09

VS2010+OpenCV 项目生成EXE文件如何在其他电脑上直接运行的相关文章

有关vs2010将c++生成exe文件时出现LINK : fatal error LNK1123: 转换到 COFF 期间失败和环境变量问题

不知怎么本来编译好好的VS2010环境,忽然出现"转换到 COFF 期间失败: 文件无效或损坏"的链接错误.花了好多天,试了好多方法,最终解决了这个问题.现在罗列一下这几种解决方案:方案1:点击"项目"-->"属性" --> "清单工具",然后选择"输入和输出' --> '嵌入清单',将后面的'是'改成'否'就可以了方案2:在VS安装目录搜索cvtres.exe搜索发现有两个cvtres.exe文件

netcode 控制台项目生成exe文件

官网 地址参考 https://docs.microsoft.com/zh-cn/dotnet/core/tools/dotnet-build 项目根目录下 执行命令 dotnet build --runtime win-x64 位置 原文地址:https://www.cnblogs.com/chxl800/p/12160644.html

VS2010中如何将exe文件生成setup安装文件

VS2010中如何将exe文件生成setup安装文件 描述:当我们完成一个窗体应用程序时,想要将软件给用户使用,但又不想给源代码. 于是我们需要将我们的应用程序进行打包. 我知道的打包方式有两种,一种是在学校的时候老师教的用7-zip生成自解压的压缩包方式, 另一种是利用VS2010直接生成. 接下来将详细介绍第二种打包方式. 目录 一.创建 二.设置属性 三.创建快捷方式 四.生成安装文件 一.创建 1.右击鼠标->添加->新建项目 2.选择其他项目类型->安装和部署->Visu

VS2010 打包生成exe文件后 运行安装文件出现 TODO:<文件说明>已停止工作并已关闭

VS2010 打包生成exe文件后  运行安装文件出现  TODO:<文件说明>已停止工作并已关闭 TODO: <文件说明>已停止工作 原因: 打包的时候在文件系统中建立了空文件夹,那么该空的文件夹就不会被加载进去,导致程序运行用到该文件夹的时候就会出现了该问题. 解决方法: 如建立了文件Calibration 那么先随便加载一个文件(如:3.csv)文件进去  不让它为空就行了

VS2010 打包生成exe文件后 执行安装文件出现 TODO:&amp;lt;文件说明&amp;gt;已停止工作并已关闭

一.VS2010 打包生成exe文件后  执行安装文件出现  TODO:<文件说明>已停止工作并已关闭 TODO: <文件说明>已停止工作 原因: 打包的时候在文件系统中建立了空目录,那么该空的目录就不会被载入进去,导致程序执行用到该目录的时候就会出现了该问题. 解决方法: 如建立了文件Calibration 那么先随便载入一个文件(如:3.csv)文件进去  不让它为空即可了 二.打包经常使用设置: 1.设置软件的安装文件夹 能够直接改动的faultLocation  如:E:\

vs2010环境下生成dll文件

vs2010环境下生成dll文件 1,新建win32工程,选中DLL项目,如下图:2,分别添加头文件和cpp文件 #ifndef LIB_H#define LIB_Hextern "C" int _declspec(dllexport)add(int x,int y);    // 声明为C编译.链接方式的外部函数#endif #include "stdafx.h"int add(int x,int y){    return x+y;} 3,新建win32控制台工

三种方法,让WPF项目生成单文件

原文:三种方法,让WPF项目生成单文件 在使用WPF写一些小工具时,往往需要将多个DLL文件嵌入到EXE文件里,生成单文件.这里介绍三种方案: 把DLL文件作为嵌入资源 使用Costura.Fody 使用.NET Reactor. 一.把DLL文件转换为嵌入资源 第一步,在项目中新建Resources文件夹,把需要的dll文件拷贝到该目录中(可以是多个dll文件),然后修改每个文件的属性,将生成操作改为嵌入的资源,例如: 拷贝dll文件 修改生成操作 第二步,修改App.xaml.cs文件,添加

matlab改变GUI和figure左上角图标的方法,并生成exe文件

1. GUI左上角图标的更改,假设GUI的Tag为figure1,在其OpeningFcn里添加h = handles.figure1; %返回其句柄newIcon = javax.swing.ImageIcon('1.jpg')figFrame = get(h,'JavaFrame'); %取得Figure的JavaFrame.figFrame.setFigureIcon(newIcon); %修改图标%%%生成exe文件的方法在附件里2. 一般图形窗口的左上角图标的更改clearnewIco

c++与matlab联合编程,调用Deploytool 生成exe文件和dll文件(转)

转自:http://www.cnblogs.com/xlw1219/archive/2012/12/25/2832222.html 首先必须知道联合编程需要知道的一些命令解释: mcc 的作用是将 .m文件编译为 c/c++动态链接库文件,使你可以在 c/c++程序中使用 matlab的一些函数功能.mcc 也可以将.m文件编译为exe可执行文件. mex 的作用是将 c/cpp文件编译为 .m  文件可以调用的库文件,在Windows操作系统里通常是以mexw32或mexw64为扩展名,让你可