我写了一个库,六千行代码左右,
用vs2005编译出来的静态库非常大,十多M
而且release比debug版还要大的多,二十多M??在优化里选择 按最大速度优化
然后把内联函数全部取消内联放到cpp里实现
还是一样的大小,几乎没有改变。请问一下各位这可能是什么情况??
六千行的代码二十多M的静态库,这个好像不大正常吧。
当中没有用到任何的其它库,只是API和C++S标准库.
用vs2005编译出来的静态库非常大,十多M
而且release比debug版还要大的多,二十多M??在优化里选择 按最大速度优化
然后把内联函数全部取消内联放到cpp里实现
还是一样的大小,几乎没有改变。请问一下各位这可能是什么情况??
六千行的代码二十多M的静态库,这个好像不大正常吧。
当中没有用到任何的其它库,只是API和C++S标准库.
解决方案 »
- 多线程收发数据的设计问题
- 新手求教,glGetDoublev(GL_MODELVIEW_MATRIX, modelview);的用法,谢谢!
- WindowProc()捕获消息失败,怎么回事?
- VC调试dmp文件时,是否有选项加载时间戳不对的PDB?
- 关于定时的问题?
- 请帮助解决一个基本问题!高分!
- 请教各位蓝牙编程中l2_psm是什么作用?
- 请各位高手指点,程序如何自动向IE的EDIT控件写入密码和用户名?
- 关于信息系统的问题。
- 关于getprofilestring、writeprofilestring的问题
- VC2005.net 简单窗口程序出错
- Installshield 2008 如何实现通过 radiobutton 选择安装
我用vc2003静态編譯一個一萬多行代碼的dll,优化过后,只有700多KB啊你查一下depends查下,你都连了什么库
链接出来的程序倒是不大
一个窗口测试程序
release出来只有280k
用depends查看,只需要user32,gdi32,kernel32.dll三个库。
最终编译出来的exe其实不大
运行时库选择 多线程dll 生成的lib
反而比 运行时库选择 多线程 生成的lib还要大。所以目前我的困惑生成出来的静态lib超大 ,6000行代码生成十多二十m的lib
release比debug版更大,二十多m.
代码生成里的运行时库 选择多线程 生成的lib,反而比 选择多线程dll 更大,大几m。
因为静态连接后,相应于直播从其他库把代码copy过来了
而用depends查不到这些库...
Debug是:No Whole Program Optimization
Release是:Use Link Time Code Generation
把Release版改成跟Debug版一样,体积就下来了。
我程序里面调用了他的静态库函数,编译出来的exe也就几百k,这个估计没有什么问题的。