| 查看: 2796 | 回复: 15 | |||
| 本帖产生 1 个 程序强帖 ,点击这里进行查看 | |||
[交流]
【求助】c++如何发布独立的程序?
|
|||
|
俺是用VC6.0的编译环境,程序编译成功后,如何发布独立运行的执行文件? 就是拷贝到没有安装vc6.0的机子上也能运行。 还要专门的软件吗? 哪里有下载? 请高手指点一二,谢谢了先! 白天不能上网,晚上下班回家发金币,请包涵! |
» 猜你喜欢
有没有人能给点建议
已经有5人回复
假如你的研究生提出不合理要求
已经有12人回复
实验室接单子
已经有7人回复
全日制(定向)博士
已经有5人回复
萌生出自己或许不适合搞科研的想法,现在跑or等等看?
已经有4人回复
Materials Today Chemistry审稿周期
已经有4人回复
参与限项
已经有3人回复
对氯苯硼酸纯化
已经有3人回复
所感
已经有4人回复
要不要辞职读博?
已经有7人回复
» 本主题相关价值贴推荐,对您同样有帮助:
c++程序设计课件
已经有89人回复
如何写程序并生成软件?
已经有17人回复
急求 C或C++编如何求三次方程的程序 交作业
已经有3人回复
上海高等研究院(筹)信息科学与技术研究部招聘启事
已经有8人回复
中科院深圳先进技术研究院2011年校园招聘开始了,敬请关注,待遇已补上
已经有79人回复
【分享】C++程序设计总结——学C++的朋友多注意!!!
已经有10人回复
» 抢金币啦!回帖就可以得到:
散金
+5/620
中国科学院大学功能多孔组装材料实验室招聘启事
+2/306
限广州,征女友
+2/186
中国石油大学(华东)电气工程专业博士研究生招生
+1/77
南京理工大学曾海波/李伟金 招聘博士后(电磁响应:介电调控等方向)
+1/73
锌离子混合电容器
+1/73
浙江师范大学国家杰青杨启华教授团队招收2026年博士研究生
+1/68
湖南科技大学资安学院管青军教授2026年招收审核制博士生
+1/66
留学导师避雷——望传播
+1/58
华中科技大学郭睿副教授建筑与能源科学课题组诚招博士研究生(2026.1.19截止)
+1/50
北京—征老婆
+1/50
Win10系统Xshell窗口小、无法移动、不显示工具栏的一个解决办法
+1/41
北京林业大学林学院——昆虫病毒/病毒组——博士招生
+1/28
江西理工大学稀土学院稀土发光材料研究所招收2026届材料科学与工程专业博士研究生2名
+2/20
坐标济南,山东农科院招 有机合成 or 药物化学 联培硕士研究生
+1/20
香港浸会大学化学系质谱分析测试中心招聘研究助理
+1/16
中国科学院大学-杨晗课题组-诚聘-博士后、副研究员
+1/4
香港中文大学(深圳)管君课题组 微纳光学方向 招收硕士、博士、博士后
+1/3
液晶拓扑光子学博士招生(电子科技大学)
+1/1
[招募] 上海交通大学环境健康课题组科研实习生(环境健康与生物学大数据方向)
+1/1
5楼2010-11-23 13:41:25
★ ★ ★ ★ ★
steincat(金币+15):谢谢指教! 2010-12-17 22:21:18
steincat(金币+6):再次谢谢! 2010-12-17 22:21:36
余泽成(金币+5, 程序强帖+1): 谢谢参与应助! 2011-02-20 18:38:52
steincat(金币+15):谢谢指教! 2010-12-17 22:21:18
steincat(金币+6):再次谢谢! 2010-12-17 22:21:36
余泽成(金币+5, 程序强帖+1): 谢谢参与应助! 2011-02-20 18:38:52
|
linyujack 说的不正确。 所谓Debug版本,是说在.exe程序里包含了源程序的调试信息,比如符号表等。这样当你在程序里设置断点的时候,调试器能够定位到相应的语句。 另外,Debug版本,因为调试的需要,不对编译好的程序进行深度优化,甚至不优化,因为优化可能大乱源文件语句与汇编代码的对应关系,无法进行调试。 而Release版本就是完成了以上debug版本没有完成的任务,剔除了符号表,进行速度或体积上的优化。 通常来说release版本会比debug版本小。 而linyujack所说的,不是debug和release的区别,而是static和dynamic的区别。 任何编译型语言都需要一些链接库,而库的提供形式有两种:1 静态库, 所有的代码都放进最终的程序里,最后的程序就是所谓的绿色软件。 2 动态链接库。库代码单独放到一个文件里, 只有在最终运行的时候才加载相应的代码。所以,使用动态链接库的时候,由于有一部分代码在主程序以外,导致主程序显得很小。 所以最终软件发布的时候需要: 1 编译程release版本,并选择相应的优化选项 2 确定使用动态链接库还是静态的库。 2.1 当你使用的库很普遍,几乎任何电脑上都有安装的时候, 可以使用动态链接库,以减少程序的体积。但这通常没有绝对的保证。 2.1.1 如果你的程序调用了大量的库函数(我说的是种类,而不是次数),那可以包含这个库的动态链接库(DLL文件),随最终软件一同发布。而这个过程已经有N多的软件帮你完成,比如Windows Installer等。 2.2 如果你的程序很简单,而且想绿色运行,那就选择静态库,这样最终的程序体积会有所增大,但不需要任何安装就可以直接运行(需要通过DBMS访问数据库的除外) 2.2.1 如果你想发布绿色软件,又觉得软件体积太大,那么,请试试UPX这个软件,它是一个压缩软件,但压缩后的程序和原来没有任何区别(偶尔也会有点小麻烦,不过我还没有遇到过) OK,我想我已经解释清楚了。至于如何选择编译方式,这个自己研究一下吧。 |
9楼2010-12-17 09:14:50
2楼2010-11-22 21:01:43
3楼2010-11-22 22:36:10
4楼2010-11-22 22:53:14
7楼2010-12-16 17:53:26
8楼2010-12-17 08:24:14
★ ★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
余泽成(金币+3): 谢谢参与应助,欢迎常来程序语言版! 2011-02-20 18:39:19
小木虫(金币+0.5):给个红包,谢谢回帖交流
余泽成(金币+3): 谢谢参与应助,欢迎常来程序语言版! 2011-02-20 18:39:19
|
holmescn说的很正确,只是补充一点,其实在大多数实际的软件项目中,Release版本也还是需要调试才能正常运行的。推荐如下的调试技巧: 生成map文件。即使编译Release版本时打开了优化选项,也就是在VC++中打开Generate mapfile选项,它仅仅是把编译连接时的所有函数入口地址记录在一个后缀为map文件中,程序如果出了问题,都可以得到崩溃时的EIP地址,通过这个地址,就可以查到程序挂掉时的函数是哪个。 |
10楼2011-02-16 22:58:18
11楼2011-07-05 18:56:17
12楼2011-07-05 23:28:23
13楼2011-07-08 12:32:10
14楼2011-07-15 11:30:06
15楼2011-07-15 13:40:16
16楼2011-07-16 09:23:56
简单回复
2010-12-14 21:31
回复
steincat(金币+1):thx 2010-12-17 08:24:38












回复此楼
