由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - g++跟cl差的也太大了
相关主题
类似vc问题:在Debug版本成功;在Release版本link失败大家看看这样一个工作值多少钱?
问个DLL调用问题Re: 一个DLL的问题
how to resolve this problem?Help: any good decompiler for DLL
c++设计一问:如何动态地调用不同的算法的dll ?要写 Visual C 下的 DLL 东西
一个C++语法问题Question about COM
一个multithreading 问题How to find the DLL dependency of an EXE file?
post incrementrelease Vs. debug???
python 水平如何提高为什么我的visual C++ 找不到 "Stdafx.h" ?
相关话题的讨论汇总
话题: nise话题: release话题: strip话题: v10话题: cl
进入Programming版参与讨论
1 (共1页)
w***g
发帖数: 5958
1
同一个程序,完全静态链接,g++出来是strip干净了还剩13M,visual studio express
2010出来是1.7M。怎么会差这么大!!!!
N***m
发帖数: 4460
2
windows一般是净身的

express

【在 w***g 的大作中提到】
: 同一个程序,完全静态链接,g++出来是strip干净了还剩13M,visual studio express
: 2010出来是1.7M。怎么会差这么大!!!!

x****u
发帖数: 44466
3
Win的程序,你还能把api的DLL也静态链接掉?

express

【在 w***g 的大作中提到】
: 同一个程序,完全静态链接,g++出来是strip干净了还剩13M,visual studio express
: 2010出来是1.7M。怎么会差这么大!!!!

w***g
发帖数: 5958
4
API的DLL不算。这就像把Linux的系统调用也静态链接一样是不可能的。我的系统只用标
准c/c++库函数,API DLL动态链接对于比较来说还是公平的。

【在 x****u 的大作中提到】
: Win的程序,你还能把api的DLL也静态链接掉?
:
: express

x****u
发帖数: 44466
5
API不是Win的系统调用。。。

用标

【在 w***g 的大作中提到】
: API的DLL不算。这就像把Linux的系统调用也静态链接一样是不可能的。我的系统只用标
: 准c/c++库函数,API DLL动态链接对于比较来说还是公平的。

d*********8
发帖数: 2192
6
把命令行参数贴出来看看。我怀疑CL没有把C RUNTIME静态编译。

express

【在 w***g 的大作中提到】
: 同一个程序,完全静态链接,g++出来是strip干净了还剩13M,visual studio express
: 2010出来是1.7M。怎么会差这么大!!!!

w***g
发帖数: 5958
7
编译:
/Zi /nologo /W3 /WX- /Ox /Ob2 /Oi /Ot /Oy- /GL /D "WIN32" /D "NDEBUG" /D "_W
INDOWS" /D "_UNICODE" /D "UNICODE" /Gm- /EHsc /MT /GS /Gy /fp:precise /Zc:wc
har_t /Zc:forScope /Fp"Release\nise.pch" /Fa"Release\" /Fo"Release\" /Fd"Rel
ease\vc100.pdb" /Gd /analyze- /errorReport:queue
链接:
/OUT:"D:\src\nise-v10\nise\Release\nise.exe" /INCREMENTAL:NO /NOLOGO "jpeg.l
ib" "libboost_program_options.lib" "PocoFoundationmt.lib" "PocoNetmt.lib" "P
ocoUtilmt.lib" "PocoXMLmt.lib" "kernel32.lib" "user32.lib" "gdi32.lib" "wins
pool.lib" "comdlg32.lib" "advapi32.lib" "shell32.lib" "ole32.lib" "oleaut32.
lib" "uuid.lib" "odbc32.lib" "odbccp32.lib" /MANIFEST /ManifestFile:"Release
\nise.exe.intermediate.manifest" /ALLOWISOLATION /MANIFESTUAC:"level='asInvo
ker' uiAccess='false'" /DEBUG /PDB:"D:\src\nise-v10\nise\Release\nise.pdb" /
SUBSYSTEM:CONSOLE /OPT:REF /OPT:ICF /PGD:"D:\src\nise-v10\nise\Release\nise.
pgd" /LTCG /TLBID:1 /DYNAMICBASE /NXCOMPAT /MACHINE:X86 /ERRORREPORT:QUEUE

【在 d*********8 的大作中提到】
: 把命令行参数贴出来看看。我怀疑CL没有把C RUNTIME静态编译。
:
: express

w***g
发帖数: 5958
8
找到原因了. g++命令行上加-s, 生成的代码一下子就小了很多, 和windows下差不多了.

_W
wc
Rel
.l
"P
wins
oleaut32.

【在 w***g 的大作中提到】
: 编译:
: /Zi /nologo /W3 /WX- /Ox /Ob2 /Oi /Ot /Oy- /GL /D "WIN32" /D "NDEBUG" /D "_W
: INDOWS" /D "_UNICODE" /D "UNICODE" /Gm- /EHsc /MT /GS /Gy /fp:precise /Zc:wc
: har_t /Zc:forScope /Fp"Release\nise.pch" /Fa"Release\" /Fo"Release\" /Fd"Rel
: ease\vc100.pdb" /Gd /analyze- /errorReport:queue
: 链接:
: /OUT:"D:\src\nise-v10\nise\Release\nise.exe" /INCREMENTAL:NO /NOLOGO "jpeg.l
: ib" "libboost_program_options.lib" "PocoFoundationmt.lib" "PocoNetmt.lib" "P
: ocoUtilmt.lib" "PocoXMLmt.lib" "kernel32.lib" "user32.lib" "gdi32.lib" "wins
: pool.lib" "comdlg32.lib" "advapi32.lib" "shell32.lib" "ole32.lib" "oleaut32.

S***w
发帖数: 1014
9
+s 什么意思 普及一下

了.

【在 w***g 的大作中提到】
: 找到原因了. g++命令行上加-s, 生成的代码一下子就小了很多, 和windows下差不多了.
:
: _W
: wc
: Rel
: .l
: "P
: wins
: oleaut32.

t****t
发帖数: 6806
10
man gcc

【在 S***w 的大作中提到】
: +s 什么意思 普及一下
:
: 了.

b******n
发帖数: 592
11
you can call strip on binary as well, the downside is you lose many useful
symbols when things go wrong.

了.

【在 w***g 的大作中提到】
: 找到原因了. g++命令行上加-s, 生成的代码一下子就小了很多, 和windows下差不多了.
:
: _W
: wc
: Rel
: .l
: "P
: wins
: oleaut32.

d*********8
发帖数: 2192
12
strip 和 gcc -s 应该是差不多的。估计strip参数没选好,或者GCC和STRIP版本不一
致。
1 (共1页)
进入Programming版参与讨论
相关主题
为什么我的visual C++ 找不到 "Stdafx.h" ?一个C++语法问题
请教:how to call a COM object in a stored procedure? (转载)一个multithreading 问题
how to link DLL staticly in visual c# ?post increment
linker problem in VCpython 水平如何提高
类似vc问题:在Debug版本成功;在Release版本link失败大家看看这样一个工作值多少钱?
问个DLL调用问题Re: 一个DLL的问题
how to resolve this problem?Help: any good decompiler for DLL
c++设计一问:如何动态地调用不同的算法的dll ?要写 Visual C 下的 DLL 东西
相关话题的讨论汇总
话题: nise话题: release话题: strip话题: v10话题: cl