[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: New 'back' backend
From: |
Nicola Pero |
Subject: |
Re: New 'back' backend |
Date: |
Fri, 5 Apr 2002 14:06:44 +0100 (BST) |
> > that occurred to me too ... and well it is certainly caused by the fact
> > that gnustep-make has been modified to link bundles against all libraries
>
> So does that mean that it staticly links bundles against available libraries
> rather than using the shared libraries on startup ? I am somewhat confused
> by this comment...
I mean that ... well that if your main application is linked against
gnustep-base (linked statically or sharedly, whatever), and your main
application loads a bundle, that bundle does not need to be linked itself
against gnustep-base - because gnustep-base is already linked in the main
application. The bundle is only used when loaded by the application,
where gnustep-base is already linked in -- so there is no need to have
gnustep-base linked in the bundle too.
Previously, we didn't link anything in the bundle, unless the programmer
explicitly asked for a library to be dragged in (loaded) when the bundle
was loaded. Typical example - your bundle uses a database-specific
database client library; you link your bundle explicitly against that
library, while the main application does not need to link against it; and
when the bundle is loaded, the database library is taken in. All other
libraries are normally already in the main application, so there is no
need to try and drag them in too when the bundle is loaded.
Currently, we instead link all libraries required to build an executable
into every bundle too.
That may cause problems ... or may not -- but it makes things more complex
-- just think what happens if you have your application linked to a
version of gnustep-base, and your bundle linked to another version :-) ...
I'm no expert of static libs, but I suspect static libs being linked twice
might cause additional problems.