VC++ 6.0怎样生成发布(release)版本

原创 2013年12月05日 23:55:41

1、确定Debug版无错,注意Trace等调试方法可能造成的错误

2、Release版的exe文件链接的是标准的MFC DLL,比如MFC42.dll。这些DLL在安装Windows的

时候,就会装到系统中。因此,这样的exe在没安装Visual C++ 6.0 的机器上也能运行。而

Debug版不能,除非使用静态链接

生成release版的步骤:

build->setActive configuration->工程名-win32 Release

debug版本和release版本的区别:

Debug 通常称为调试版本,它包含调试信息,并且不作任何优化,便于程序员调试程序。

Release 称为发布版本,它往往是进行了各种优化,使得程序在代码大小和运行速度上都是最优的,以便用户很好地使用。

Debug 和 Release 的真正秘密(编译选项的不同)。

(说实话下面这些本人是不懂,不过在搜到资料,希望对大家有所帮助!)

1、Debug 版本:
/MDd /MLd 或 /MTd 使用 Debug runtime library(调试版本的运行时刻函数库)/Od 关闭优化开关
/D "_DEBUG" 相当于 #define _DEBUG,打开编译调试代码开关(主要针对assert函数)
/ZI 创建 Edit and continue(编辑继续)数据库,这样在调试过程中如果修改了源代码不需重新编译
/GZ 可以帮助捕获内存错误
/Gm 打开最小化重链接开关,减少链接时间

2、Release 版本:
/MD /ML 或 /MT 使用发布版本的运行时刻函数库
/O1 或 /O2 优化开关,使程序最小或最快
/D "NDEBUG" 关闭条件编译调试代码开关(即不编译assert函数)
/GF 合并重复的字符串,并将字符串常量放到只读内存,防止
被修改

实际上,Debug 和 Release 并没有本质的界限,他们只是一组编译选项的集合,编译器只是按照预定的选项行动。事实上,我们

甚至可以修改这些选项,从而得到优化过的调试版本或是带跟踪语句的发布版本

二、下面对生成各种文件的进行说明:

   .opt :工程 关于开发环境的参数文件。如工具条位置等信息。

   .dsw : (developer stdio workspace)工作区文件,其他特点和dsp差不多。

   .ncb  :无编译浏览文件。

  .dsp: 项目文件,文本格式。

  .plg: 是编译信息文件。



版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

VC6生成Release版本程序

VC6.0工程在编译时由于设置问题有时不会生成release版本,只有debug版本。 解决犯非法如下: 工程——设置,将Setting for后面的选项改为Win32 Release。然后重新编...
  • ROVAST
  • ROVAST
  • 2014-04-22 09:01
  • 1642

如何使用VC++6.0发布程序(即release版本程序)

大家都知道VC编译器默认生成debug版本的程序,但是debug版本程序无法运行在没有安装VC的电脑上, 这就要就我们生成release版本的程序,因为release版本在未安装VC的电脑上也能运行(...

精选:深入理解 Docker 内部原理及网络配置

网络绝对是任何系统的核心,对于容器而言也是如此。Docker 作为目前最火的轻量级容器技术,有很多令人称道的功能,如 Docker 的镜像管理。然而,Docker的网络一直以来都比较薄弱,所以我们有必要深入了解Docker的网络知识,以满足更高的网络需求。

VC++中的LINK错误总结

注:以下内容摘自http://bbs.csdn.net/topics/330066127帖子中的某一回复 LINK错误总结:          学习VC++时经常会遇到链接错误LNK2...

Debug与Release版本的区别

本文主要包含如下内容: 1. Debug 和 Release 编译方式的本质区别 2. 哪些情况下 Release 版会出错 2. 怎样"调试" Release 版的程序 --------------...

QT 发布release版本

qt发布release版本时需要打包一些dll,需要哪些呢?请看截图: 在qt的安装包下找到这些文件,放在release文件夹下即可,当然有些时候也会需要一些其他的,比如含有串口的程序还需要加入...

Android Studio 生成debug版本正常,生成release版本报错

最近的任务是优化一个老项目,这个项目的开发工具一直以来都是Inteliji IDEA,项目除了生成测试包外,还会有UAT包、生产包等,需要频繁的手动更改IP地址、端口等等一些参数。新项目的开发都是...

vc++6.0中debug和release

在vc中的菜单栏上,右键选着组件,便可把debug和release调出来,然后选择相应的编译方法,debug编译出来的文件是.dat文件,release编译出来的是.dll动态库文件。两种方法编译出来...

Qt USB通信--生成release版本

前面讲过Qt USB通信采用第三方开源库hidapi,那么当整个UI完成之后,我们就要发布我们的release版本。网上有众多Qt程序发布的资料,可以参考一下。生成.exe文件之后放到其他电脑无法执行...

VC++ 如何发布程序(即release版本程序)

大家都知道VC编译默认生成debug版本的程序,但是debug版本程序无法运行在没有安装VC 的电脑上,这就要就我们生成release版本的程序,因为release版本在未安装VC的电脑上也能运行。...

VC++ 如何发布程序(即release版本程序)

编了这么多程序却不知道如何发布,实在汗颜。大家都知道VC编译默认生成debug版本的程序,但是debug版本程序无法运行在没有安装VC的电脑上,这就要就我们生成release版本的程序,因为relea...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)