Phobos still being statically linked in?
Marc Schütz via Digitalmars-d
digitalmars-d at puremagic.com
Sat Oct 17 09:10:20 PDT 2015
On Saturday, 17 October 2015 at 13:54:12 UTC, Shriramana Sharma
wrote:
> Marc Schütz wrote:
>
>> Yes, it's still linked statically by default, at least with
>> DMD. I don't know why this wasn't changed yet, I just tried
>> linking against libphobos.so and it worked. The resulting
>> binary is then down to 13 Kb, after stripping.
>
> Wow that's nice to hear! Can you outline the steps to link any
> given .d file against libphobos.so?
Unfortunately, I haven't found a switch that makes DMD use
dynamic linking. Maybe I just missed it... So, you have to do it
step by step:
1) Use the `-c` switch to make the compiler output:
dmd -O -inline -c foo.d
This generates `foo.o`.
2) Link by calling `gcc`:
gcc -o foo foo.o -lphobos2
This calls `ld` with the right options and results in a binary
`foo`.
3) Optionally, strip the binary to make it smaller:
strip foo
More information about the Digitalmars-d
mailing list