My D cross-compiler for wince generates huge binary
Vincent Richomme
forumer at smartmobili.com
Sat Aug 16 02:13:37 PDT 2008
David Friedman a écrit :
> 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
I have tried to strip it and now I get 242 kB but it's far too big for
emebedded world.
I would prefer to split things, I mean would it be possible to have on
one side a shared lib emebedding garbage collector and on the other side
user applications ?
More information about the D.gnu
mailing list