My D cross-compiler for wince generates huge binary
David Friedman
dvdfrdmn at users.ess-eff.net
Fri Aug 15 19:48:29 PDT 2008
Vincent Richomme wrote:
> Hi,
>
> When trying o build a simple D program with a wince cross compiler the
> generated binary is about 1 MB for a simple MessageBox.
>
>
> $> arm-mingw32ce-gdc test.d -O2 -o testD.exe
> $>ls -la
> -rwxr-xr-x 1 Vincent Aucun 1231211 Aug 15 16:16 testD.exe
>
> I don't understand why the binary is so big ? Is it normal ?
> Maybe it's because of D runtime and in this case how can I build it as a
> shared lib ?
>
D executables tend to be large because of the garbage collector and the
fact that the library modules generate monolith objects.
You can mitigate the latter problem by building Phobos (and your apps)
with -ffunction-sections and -fdata-sections. Then use -Wl,-gc-sections
in the link command.
Also: Have you tried stripping the executable?
David
More information about the D.gnu
mailing list