| 查看: 2732 | 回复: 15 | |||
| 本帖产生 1 个 程序强帖 ,点击这里进行查看 | |||
[交流]
【求助】c++如何发布独立的程序?
|
|||
|
俺是用VC6.0的编译环境,程序编译成功后,如何发布独立运行的执行文件? 就是拷贝到没有安装vc6.0的机子上也能运行。 还要专门的软件吗? 哪里有下载? 请高手指点一二,谢谢了先! 白天不能上网,晚上下班回家发金币,请包涵! |
» 猜你喜欢
职称评审没过,求安慰
已经有41人回复
回收溶剂求助
已经有7人回复
硝基苯如何除去
已经有3人回复
A期刊撤稿
已经有4人回复
垃圾破二本职称评审标准
已经有17人回复
投稿Elsevier的Neoplasia杂志,到最后选publishing options时页面空白,不能完成投稿
已经有22人回复
EST投稿状态问题
已经有7人回复
毕业后当辅导员了,天天各种学生超烦
已经有4人回复
求助文献
已经有3人回复
三无产品还有机会吗
已经有6人回复
» 本主题相关价值贴推荐,对您同样有帮助:
c++程序设计课件
已经有89人回复
如何写程序并生成软件?
已经有17人回复
急求 C或C++编如何求三次方程的程序 交作业
已经有3人回复
上海高等研究院(筹)信息科学与技术研究部招聘启事
已经有8人回复
中科院深圳先进技术研究院2011年校园招聘开始了,敬请关注,待遇已补上
已经有79人回复
【分享】C++程序设计总结——学C++的朋友多注意!!!
已经有10人回复
» 抢金币啦!回帖就可以得到:
散给需要的人
+5/9520
祝福---好运连连---连连---
+4/280
【宁德时代招聘】AI 物理学家
+1/186
中国科学院山西煤炭化学研究所水污染防治与资源化利用方向招本科/硕士线上实习生
+1/81
玩个游戏吧
+2/58
【CSC招生】荷兰莱顿大学医学中心LKEB图像处理实验室 招收2026年CSC博士生多名
+1/39
上海交通大学机械与动力工程学院周宝文课题组招收2025年硕士研究生
+1/29
上海交通大学周宝文课题组招收2026年申请考核制博士研究生
+1/28
国家高层次人才引进
+1/25
复旦大学彭慧胜院士团队 | 招聘有机合成方向博士后、博士生及科研助理
+1/25
肿瘤免疫课题组招聘 博后
+1/19
湖南师范大学分子识别与荧光传感团队招收2026年“申请-考核” 制博士研究生1名
+1/10
杭州师范大学心理系赛李阳课题组招收2026年学术学位博士研究生
+1/9
中国地质大学(武汉)戴志高课题组诚招2026级硕博研究生
+1/6
固态电池到底有没有做的前途
+1/6
上海交通大学机械与动力工程学院周宝文课题组招收2026年硕士研究生
+1/5
同济大学电信学院,肖李课题组预招2027春季与秋季博士生。
+1/3
南京大学FinTech大模型实验室招募斯坦福国际联培博士生(2026)
+1/2
知名外资仪器厂家急招Application Scientist:成都
+1/2
某外资仪器厂家急招应用工程师:ARPES背景
+1/2
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













回复此楼
