Phobos and Tango deep dependancies

Jason House jason.james.house at gmail.com
Tue Oct 2 08:33:30 PDT 2007


On my linux system (that I don't have access to at themoment), dsss creates a folder called dsss_objs that has all the individual dependency files compiled as .o (AKA .obj) files.  I'd look there to see what it thinks the file depends on and then try to figure out why they were needed.

It could be that operation on windows is different or that my method is fundamentally flawed.  If I had your problem, it is where I'd start.

If it's not a problem with lots of stuff getting included, then I'd say it's the overall library bringing in bloat.  Under linux, I know there's way to not link against a complete library and instead just the individual files that dsss creates.

Gilles G. Wrote:

> Jason House Wrote:
> > Are you linking against stuff such as libphobos?  Is it possible to only compile in the exact .d files you need to use?  I think dsss tries to do that by default?
> 
> Here is an example (file main.d):
>   import std.stdio;
>   
>   int main()
>   {
>       writefln("Hello, world!");
>       return 0;
>   }
> 
> I compile with DMD like this:
> >> dmd -oftest main.d
> 
> This will create the executable "test.exe" linked against libphobos because I use a fonction from the standard lib.
> 
> Running "depends.exe" on the executable "test.exe" shows more than a hundred DLL dependancies.
> 
> I tried DSSS with this dsss.conf:
> [main.d]
> target=test
> 
> But the result is the same...




More information about the Digitalmars-d mailing list