From: Earnie B. <ear...@ya...> - 2000-11-30 18:53:24
|
--- bis...@bt... wrote: > Hi > > I've been using the MingW g++ compiler for compiling C++ programs (both > console and GUI apps using WxWindows). It seems to me that the executables > produced by MingW g++ are always very large compared to VC++. For example > the C++ version of hello (using iostream/cout) produces an executable of > almost 75K (after stripping) and the minimial WxWin statically linked > program takes about 1M (again, after stripping) as opposed to around 400K > using VC++ . C executables are much better. > > My questions: > a) Is this a limitation of the MingW C++ compiler/linker ? I was told by > someone that it is not good at removing unneeded code - is this true ? > b) What else can I do (except using compression software) to reduce > executable size ? > Try this set of switches for CFLAGS and CXXFLAGS: -O2 -fnative-struct -malign-double -mwide-multiply -ffast-math -mpreferred-stack -boundary=4 -ffunction-cse -fexpensive-optimizations -malign-functions=4 -malign -jumps=4 -malign-loops=4 YMMV with it but I've finally been able to get the cygwin1.dll below 1M in size. You may even try -O3 which adds -finline-functions but if you have inline assembler code that will cause problems. Cheers, ===== Earnie Boyd mailto:ear...@ya... --- <http://earniesystems.safeshopper.com> --- --- Cygwin: POSIX on Windows <http://gw32.freeyellow.com/> --- --- Minimalist GNU for Windows <http://www.mingw.org/> --- __________________________________________________ Do You Yahoo!? Yahoo! Shopping - Thousands of Stores. Millions of Products. http://shopping.yahoo.com/ |