* [gentoo-dev] gentoo: static/dynamic linking libraries
@ 2007-04-29 8:32 Roman Zimmermann
2007-04-29 8:54 ` Jakub Moc
0 siblings, 1 reply; 24+ messages in thread
From: Roman Zimmermann @ 2007-04-29 8:32 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 978 bytes --]
I'm now using gentoo with EXTRA_ECONF="--disable-static" for a while and it
seems quite stable. Sometimes I encounter a package that won't build with
this setting, but that's a rare occasion. At the moment this packages are for
me:
x11-libs/libXxf86vm
sys-devel/gdb-6.6
dev-libs/jrtplib-3.5.2
dev-libs/libpcre
sys-apps/ed
I see that this way to disable static libraries is not perfect.
Disabling static linking has - for me - before all the advantage of reducing
size for most packages - for some packages up to 50%.
So I'm curious why (nearly?) all ebuilds build static _and_ dynamic libraries?
I understand that the current way is pretty hassle-free. But from my
perspective a (possibly officialy unsupported) way to make things easier for
people who wan't the choice would be fine.
I'm sorry if there has been such a discussion already. Also I don't want to
start a flame about what is the better choice (static or dynamic).
regards
Roman
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [gentoo-dev] gentoo: static/dynamic linking libraries
2007-04-29 8:32 [gentoo-dev] gentoo: static/dynamic linking libraries Roman Zimmermann
@ 2007-04-29 8:54 ` Jakub Moc
2007-04-29 10:36 ` Ciaran McCreesh
0 siblings, 1 reply; 24+ messages in thread
From: Jakub Moc @ 2007-04-29 8:54 UTC (permalink / raw
To: gentoo-dev
On 4/29/07, Roman Zimmermann <mereandor@gmail.com> wrote:
> I'm now using gentoo with EXTRA_ECONF="--disable-static" for a while and it
> seems quite stable. Sometimes I encounter a package that won't build with
> this setting, but that's a rare occasion. At the moment this packages are for
> me:
> dev-libs/libpcre
Disabling static libs in libpcre makes sys-apps/grep w/ USE=pcre bomb
out on compile... Just an example why you should always install both
of them.
> Disabling static linking has - for me - before all the advantage of reducing
> size for most packages - for some packages up to 50%.
>
> So I'm curious why (nearly?) all ebuilds build static _and_ dynamic libraries?
> I understand that the current way is pretty hassle-free. But from my
> perspective a (possibly officialy unsupported) way to make things easier for
> people who wan't the choice would be fine.
See http://bugs.gentoo.org/show_bug.cgi?id=165629,
http://marc.info/?l=gentoo-dev&m=116026024223024&w=2 etc.
--
Jakub Moc
Email: jakub.moc@gmail.com
--
gentoo-dev@gentoo.org mailing list
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [gentoo-dev] gentoo: static/dynamic linking libraries
2007-04-29 8:54 ` Jakub Moc
@ 2007-04-29 10:36 ` Ciaran McCreesh
2007-04-29 16:43 ` Roman Zimmermann
2007-04-29 21:50 ` Rémi Cardona
0 siblings, 2 replies; 24+ messages in thread
From: Ciaran McCreesh @ 2007-04-29 10:36 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 667 bytes --]
On Sun, 29 Apr 2007 10:54:12 +0200
"Jakub Moc" <jakub.moc@gmail.com> wrote:
> On 4/29/07, Roman Zimmermann <mereandor@gmail.com> wrote:
> > I'm now using gentoo with EXTRA_ECONF="--disable-static" for a
> > while and it seems quite stable. Sometimes I encounter a package
> > that won't build with this setting, but that's a rare occasion. At
> > the moment this packages are for me:
> > dev-libs/libpcre
>
> Disabling static libs in libpcre makes sys-apps/grep w/ USE=pcre bomb
> out on compile... Just an example why you should always install both
> of them.
No, that's an example of why you should sometimes install both.
--
Ciaran McCreesh
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [gentoo-dev] gentoo: static/dynamic linking libraries
2007-04-29 10:36 ` Ciaran McCreesh
@ 2007-04-29 16:43 ` Roman Zimmermann
2007-04-29 17:50 ` Marius Mauch
2007-04-29 18:46 ` paul kölle
2007-04-29 21:50 ` Rémi Cardona
1 sibling, 2 replies; 24+ messages in thread
From: Roman Zimmermann @ 2007-04-29 16:43 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 1370 bytes --]
Am Sonntag 29 April 2007 12:36 schrieb Ciaran McCreesh:
> On Sun, 29 Apr 2007 10:54:12 +0200
>
> "Jakub Moc" <jakub.moc@gmail.com> wrote:
> > On 4/29/07, Roman Zimmermann <mereandor@gmail.com> wrote:
> > > I'm now using gentoo with EXTRA_ECONF="--disable-static" for a
> > > while and it seems quite stable. Sometimes I encounter a package
> > > that won't build with this setting, but that's a rare occasion. At
> > > the moment this packages are for me:
> > > dev-libs/libpcre
> >
> > Disabling static libs in libpcre makes sys-apps/grep w/ USE=pcre bomb
> > out on compile... Just an example why you should always install both
> > of them.
>
> No, that's an example of why you should sometimes install both.
These are 5 packages out of 845 on my system. For those with version number it
is only a compile time error, when make errornously tries to build a static
target. Those without number are needed static by another package or don't
like --disable-static (sys-apps/ed). That leaves 2 out of 845.
So I'm with Ciaran here: It works for almost all packages and makes at least
some difference. Maybe enough to (really) give the users the choice (without
the ugly EXTRA_ECONF-hack)?
Those links Jakub posted are interesting, but I don't find an explanation why
this decission was made. Maybe you have a link to that discussion too?
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [gentoo-dev] gentoo: static/dynamic linking libraries
2007-04-29 16:43 ` Roman Zimmermann
@ 2007-04-29 17:50 ` Marius Mauch
2007-04-29 17:56 ` Ciaran McCreesh
2007-04-29 18:21 ` Roman Zimmermann
2007-04-29 18:46 ` paul kölle
1 sibling, 2 replies; 24+ messages in thread
From: Marius Mauch @ 2007-04-29 17:50 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 792 bytes --]
On Sun, 29 Apr 2007 18:43:29 +0200
Roman Zimmermann <mereandor@gmail.com> wrote:
> Those links Jakub posted are interesting, but I don't find an
> explanation why this decission was made. Maybe you have a link to
> that discussion too?
What decision? That USE=static shouldn't be used for (not) installing
static libraries is simply because the flag is used to control how
(parts of) a package should be linked and global flags
shouldn't be used for completely different purposes. That's been the
case since the beginning, so I doubt you'll find any dicussion about it.
Marius
--
Public Key at http://www.genone.de/info/gpg-key.pub
In the beginning, there was nothing. And God said, 'Let there be
Light.' And there was still nothing, but you could see a bit better.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [gentoo-dev] gentoo: static/dynamic linking libraries
2007-04-29 17:50 ` Marius Mauch
@ 2007-04-29 17:56 ` Ciaran McCreesh
2007-04-29 18:21 ` Roman Zimmermann
1 sibling, 0 replies; 24+ messages in thread
From: Ciaran McCreesh @ 2007-04-29 17:56 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 818 bytes --]
On Sun, 29 Apr 2007 19:50:58 +0200
Marius Mauch <genone@gentoo.org> wrote:
> On Sun, 29 Apr 2007 18:43:29 +0200
> Roman Zimmermann <mereandor@gmail.com> wrote:
> > Those links Jakub posted are interesting, but I don't find an
> > explanation why this decission was made. Maybe you have a link to
> > that discussion too?
>
> What decision? That USE=static shouldn't be used for (not) installing
> static libraries is simply because the flag is used to control how
> (parts of) a package should be linked and global flags
> shouldn't be used for completely different purposes. That's been the
> case since the beginning, so I doubt you'll find any dicussion about
> it.
The more interesting question is why static libraries are built and
installed for most packages at all.
--
Ciaran McCreesh
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [gentoo-dev] gentoo: static/dynamic linking libraries
2007-04-29 17:50 ` Marius Mauch
2007-04-29 17:56 ` Ciaran McCreesh
@ 2007-04-29 18:21 ` Roman Zimmermann
1 sibling, 0 replies; 24+ messages in thread
From: Roman Zimmermann @ 2007-04-29 18:21 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 1200 bytes --]
Am Sonntag 29 April 2007 19:50 schrieb Marius Mauch:
> On Sun, 29 Apr 2007 18:43:29 +0200
>
> Roman Zimmermann <mereandor@gmail.com> wrote:
> > Those links Jakub posted are interesting, but I don't find an
> > explanation why this decission was made. Maybe you have a link to
> > that discussion too?
>
> What decision? That USE=static shouldn't be used for (not) installing
> static libraries is simply because the flag is used to control how
> (parts of) a package should be linked and global flags
> shouldn't be used for completely different purposes. That's been the
> case since the beginning, so I doubt you'll find any dicussion about it.
>
There is also the part about: "packages that can install static and shared
libraries should always be installing them."
[http://marc.info/?l=gentoo-dev&m=116026024223024&w=2]
Which means either that this statement was meant for another context (and not
in such a general meaning) or it says that there shouldn't/won't be a way to
change this behavior.
In case 1 this misses the point. (As Ciaran pointed out.) Since I was not
specifically talking about the 'static' useflag.
For case 2 I'm very interested in the reason.
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [gentoo-dev] gentoo: static/dynamic linking libraries
2007-04-29 16:43 ` Roman Zimmermann
2007-04-29 17:50 ` Marius Mauch
@ 2007-04-29 18:46 ` paul kölle
2007-04-29 19:04 ` Roman Zimmermann
1 sibling, 1 reply; 24+ messages in thread
From: paul kölle @ 2007-04-29 18:46 UTC (permalink / raw
To: gentoo-dev
Roman Zimmermann wrote:
> So I'm with Ciaran here: It works for almost all packages and makes at least
> some difference. Maybe enough to (really) give the users the choice (without
> the ugly EXTRA_ECONF-hack)?
I wonder why you call this an ugly hack? It seems to me everyone who
wishes to avoid installing static libs is able to do so with a simple
variable. Having such a feature exposed to the mainstream crowd without
proper support by developers (testing and such) will not do any good.
cheers
Paul
--
gentoo-dev@gentoo.org mailing list
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [gentoo-dev] gentoo: static/dynamic linking libraries
2007-04-29 18:46 ` paul kölle
@ 2007-04-29 19:04 ` Roman Zimmermann
2007-04-29 19:31 ` Marius Mauch
0 siblings, 1 reply; 24+ messages in thread
From: Roman Zimmermann @ 2007-04-29 19:04 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 999 bytes --]
Am Sonntag 29 April 2007 20:46 schrieb paul kölle:
> Roman Zimmermann wrote:
> > (without the ugly EXTRA_ECONF-hack)?
>
> I wonder why you call this an ugly hack? It seems to me everyone who
> wishes to avoid installing static libs is able to do so with a simple
> variable. Having such a feature exposed to the mainstream crowd without
> proper support by developers (testing and such) will not do any good.
>
This is an ugly code since it's relies on econf which is - as an
implementation detail - only used for packages with ./configure. (according
to the ebuild howto). So it's not really a feature but a lucky assumption
that most packages know what to do with "./configure --disable-static".
Additionally handling exceptions with package.env can be a pain. It is much
less supported by tools than package.use or .keywords.
You are right that it would be wrong to expose this feature. But having it
readily available and exposing it are two different sorts of things.
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [gentoo-dev] gentoo: static/dynamic linking libraries
2007-04-29 19:04 ` Roman Zimmermann
@ 2007-04-29 19:31 ` Marius Mauch
2007-04-29 19:36 ` Ciaran McCreesh
0 siblings, 1 reply; 24+ messages in thread
From: Marius Mauch @ 2007-04-29 19:31 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 1259 bytes --]
On Sun, 29 Apr 2007 21:04:07 +0200
Roman Zimmermann <mereandor@gmail.com> wrote:
> Am Sonntag 29 April 2007 20:46 schrieb paul kölle:
> > Roman Zimmermann wrote:
> > > (without the ugly EXTRA_ECONF-hack)?
> >
> > I wonder why you call this an ugly hack? It seems to me everyone who
> > wishes to avoid installing static libs is able to do so with a
> > simple variable. Having such a feature exposed to the mainstream
> > crowd without proper support by developers (testing and such) will
> > not do any good.
> >
>
> This is an ugly code since it's relies on econf which is - as an
> implementation detail - only used for packages with ./configure.
> (according to the ebuild howto). So it's not really a feature but a
> lucky assumption that most packages know what to do with "./configure
> --disable-static". Additionally handling exceptions with package.env
> can be a pain. It is much less supported by tools than package.use
> or .keywords.
An alternative that doesn't rely on autotools would be using
INSTALL_MASK.
Marius
--
Public Key at http://www.genone.de/info/gpg-key.pub
In the beginning, there was nothing. And God said, 'Let there be
Light.' And there was still nothing, but you could see a bit better.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [gentoo-dev] gentoo: static/dynamic linking libraries
2007-04-29 19:31 ` Marius Mauch
@ 2007-04-29 19:36 ` Ciaran McCreesh
2007-04-29 20:05 ` Olivier Crête
0 siblings, 1 reply; 24+ messages in thread
From: Ciaran McCreesh @ 2007-04-29 19:36 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 269 bytes --]
On Sun, 29 Apr 2007 21:31:52 +0200
Marius Mauch <genone@gentoo.org> wrote:
> An alternative that doesn't rely on autotools would be using
> INSTALL_MASK.
Doesn't solve the "packages take twice as long to compile as they
should" issue.
--
Ciaran McCreesh
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [gentoo-dev] gentoo: static/dynamic linking libraries
2007-04-29 19:36 ` Ciaran McCreesh
@ 2007-04-29 20:05 ` Olivier Crête
0 siblings, 0 replies; 24+ messages in thread
From: Olivier Crête @ 2007-04-29 20:05 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 619 bytes --]
On Sun, 2007-29-04 at 20:36 +0100, Ciaran McCreesh wrote:
> On Sun, 29 Apr 2007 21:31:52 +0200
> Marius Mauch <genone@gentoo.org> wrote:
> > An alternative that doesn't rely on autotools would be using
> > INSTALL_MASK.
>
> Doesn't solve the "packages take twice as long to compile as they
> should" issue.
A combination of passing --disable-static to econf and INSTALL_MASK
should do it. That said, having a feature/use flag to enable static
library might not be such a good idea (and disable it on packages where
static libraries are needed).
--
Olivier Crête
tester@gentoo.org
Gentoo Developer
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [gentoo-dev] gentoo: static/dynamic linking libraries
2007-04-29 10:36 ` Ciaran McCreesh
2007-04-29 16:43 ` Roman Zimmermann
@ 2007-04-29 21:50 ` Rémi Cardona
2007-04-29 21:56 ` Donnie Berkholz
2007-05-01 2:49 ` Peter Gordon
1 sibling, 2 replies; 24+ messages in thread
From: Rémi Cardona @ 2007-04-29 21:50 UTC (permalink / raw
To: gentoo-dev
Ciaran McCreesh wrote:
> On Sun, 29 Apr 2007 10:54:12 +0200
> "Jakub Moc" <jakub.moc@gmail.com> wrote:
>> On 4/29/07, Roman Zimmermann <mereandor@gmail.com> wrote:
>>> I'm now using gentoo with EXTRA_ECONF="--disable-static" for a
>>> while and it seems quite stable. Sometimes I encounter a package
>>> that won't build with this setting, but that's a rare occasion. At
>>> the moment this packages are for me:
>>> dev-libs/libpcre
>> Disabling static libs in libpcre makes sys-apps/grep w/ USE=pcre bomb
>> out on compile... Just an example why you should always install both
>> of them.
>
> No, that's an example of why you should sometimes install both.
>
Open Question part:
Since I don't have any thing other than Gentoo : does anyone know how
other distros handle static libs in their -dev packages? Does anyone
care about static libs except for maybe really really low level stuff?
My Opinion part:
I'd definitely would like to see them leave my system for good as I have
no use for 99% of them whatsoever.
Open Question part:
Could some FEATURE disable static libs building by default in desktop
profiles, with some (like the 5 packages Roman pointed out) using
something like a RESTRICT?
(These questions are really not meant to be inflammatory and they are
honest questions as I'm learning the trade here. Yet, if I'm way off,
please let me know :) )
Cheers,
Rémi
--
gentoo-dev@gentoo.org mailing list
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [gentoo-dev] gentoo: static/dynamic linking libraries
2007-04-29 21:50 ` Rémi Cardona
@ 2007-04-29 21:56 ` Donnie Berkholz
2007-04-29 22:11 ` Ciaran McCreesh
2007-05-01 2:49 ` Peter Gordon
1 sibling, 1 reply; 24+ messages in thread
From: Donnie Berkholz @ 2007-04-29 21:56 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 555 bytes --]
Rémi Cardona wrote:
> Since I don't have any thing other than Gentoo : does anyone know how
> other distros handle static libs in their -dev packages? Does anyone
> care about static libs except for maybe really really low level stuff?
Anyone who wants to build a static binary wants the static libs. Given
the difficulty in universally enabling or disabling their builds because
of build-system differences, building them and tossing them in the trash
with INSTALL_MASK, as Marius suggested, seems like the best way to go.
Thanks,
Donnie
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [gentoo-dev] gentoo: static/dynamic linking libraries
2007-04-29 21:56 ` Donnie Berkholz
@ 2007-04-29 22:11 ` Ciaran McCreesh
2007-04-30 3:07 ` Roman Zimmermann
0 siblings, 1 reply; 24+ messages in thread
From: Ciaran McCreesh @ 2007-04-29 22:11 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 474 bytes --]
On Sun, 29 Apr 2007 14:56:57 -0700
Donnie Berkholz <dberkholz@gentoo.org> wrote:
> Anyone who wants to build a static binary wants the static libs. Given
> the difficulty in universally enabling or disabling their builds
> because of build-system differences, building them and tossing them
> in the trash with INSTALL_MASK, as Marius suggested, seems like the
> best way to go.
The best way to go or the only viable short term solution?
--
Ciaran McCreesh
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [gentoo-dev] gentoo: static/dynamic linking libraries
2007-04-29 22:11 ` Ciaran McCreesh
@ 2007-04-30 3:07 ` Roman Zimmermann
2007-04-30 3:35 ` Marius Mauch
2007-04-30 19:00 ` [gentoo-dev] " Kevin F. Quinn
0 siblings, 2 replies; 24+ messages in thread
From: Roman Zimmermann @ 2007-04-30 3:07 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 1582 bytes --]
Am Montag 30 April 2007 00:11 schrieb Ciaran McCreesh:
> On Sun, 29 Apr 2007 14:56:57 -0700
>
> Donnie Berkholz <dberkholz@gentoo.org> wrote:
> > Anyone who wants to build a static binary wants the static libs. Given
> > the difficulty in universally enabling or disabling their builds
> > because of build-system differences, building them and tossing them
> > in the trash with INSTALL_MASK, as Marius suggested, seems like the
> > best way to go.
>
> The best way to go or the only viable short term solution?
That's the point! Universally disabling static builds can't be a longterm
solution. The only sane way to do this is on a per ebuild basis. Since only
the ebuild "knows" whats the right way to disable static libs or whether this
package supports it at all.
As of now most packages use or ignore --disable-static in a proper way, but
since GNU autotools are not that popular anymore the "ignore" part of the
tree is inclined to grow.
This method has the advantage that it either fails at compile time or works
fine. Something gives me the feeling that INSTALL_MASK will break things
after installation and silently, which is a bad thing. So no solution here.
And as it was pointed out before. Static builds are not needed most of the
time. There is only 2 packages that actually need the static libraries. The
rest fails due to upstream bugs in the configure/makefile
(recognizing --disable-static but only applying it partially).
So --disable-static seems to me like the only
half-sane-partial-short-time-solution.
cheers
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [gentoo-dev] gentoo: static/dynamic linking libraries
2007-04-30 3:07 ` Roman Zimmermann
@ 2007-04-30 3:35 ` Marius Mauch
2007-04-30 7:28 ` Roman Zimmermann
2007-04-30 19:00 ` [gentoo-dev] " Kevin F. Quinn
1 sibling, 1 reply; 24+ messages in thread
From: Marius Mauch @ 2007-04-30 3:35 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 961 bytes --]
On Mon, 30 Apr 2007 05:07:00 +0200
Roman Zimmermann <mereandor@gmail.com> wrote:
> And as it was pointed out before. Static builds are not needed most
> of the time. There is only 2 packages that actually need the static
> libraries. The rest fails due to upstream bugs in the
> configure/makefile (recognizing --disable-static but only applying it
> partially).
In your test case. With USE=static or when checking the whole tree you'd
almost definitely get more packages needing it. Note that I'm not
saying that there shouldn't be another way to disable
building/installing static libs or that the general message of static
builds being irrelevant in many cases is wrong, just that the claim of
"only 2 packages needing it" is bogus.
Marius
--
Public Key at http://www.genone.de/info/gpg-key.pub
In the beginning, there was nothing. And God said, 'Let there be
Light.' And there was still nothing, but you could see a bit better.
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [gentoo-dev] gentoo: static/dynamic linking libraries
2007-04-30 3:35 ` Marius Mauch
@ 2007-04-30 7:28 ` Roman Zimmermann
2007-04-30 8:49 ` [gentoo-dev] " Duncan
0 siblings, 1 reply; 24+ messages in thread
From: Roman Zimmermann @ 2007-04-30 7:28 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 651 bytes --]
Am Montag 30 April 2007 05:35 schrieb Marius Mauch:
> [snip]
> builds being irrelevant in many cases is wrong, just that the claim of
> "only 2 packages needing it" is bogus.
Surely this was meant in the context of the previous thread: 2 out of 845
packages on my system would be right. That's about 0,237%. Either way this is
a small percentage to argue that 100% should be built with static libs.
(And there is still the question whether those two would really _need_ those
static libs or it's just due to the deficiency of the EXTRA_ECONF-method.)
When I have time I will take a look on how some other distributions handle
this.
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 24+ messages in thread
* [gentoo-dev] Re: gentoo: static/dynamic linking libraries
2007-04-30 7:28 ` Roman Zimmermann
@ 2007-04-30 8:49 ` Duncan
0 siblings, 0 replies; 24+ messages in thread
From: Duncan @ 2007-04-30 8:49 UTC (permalink / raw
To: gentoo-dev
Roman Zimmermann <mereandor@gmail.com> posted
200704300928.20427.mereandor@gmail.com, excerpted below, on Mon, 30 Apr
2007 09:28:16 +0200:
> Am Montag 30 April 2007 05:35 schrieb Marius Mauch:
>> [snip]
>> builds being irrelevant in many cases is wrong, just that the claim of
>> "only 2 packages needing it" is bogus.
>
> Surely this was meant in the context of the previous thread: 2 out of
> 845 packages on my system would be right. That's about 0,237%. Either
> way this is a small percentage to argue that 100% should be built with
> static libs. (And there is still the question whether those two would
> really _need_ those static libs or it's just due to the deficiency of
> the EXTRA_ECONF-method.)
>
> When I have time I will take a look on how some other distributions
> handle this.
What <most> other distributions (which are binary) do doesn't apply,
because they aren't designed for the end-user to be constantly compiling
stuff as is assumed on Gentoo. Most other distributions can (and
probably do) split most libraries into main-package and -dev package, the
-dev version containing headers and likely static versions of the
libraries, while the dynamically linked binaries, config, etc, is in the
main package.
That makes no sense for an end-user compiled distribution, where if a
library is installed, it's assumed it will be used, and to use it headers
and the like must be installed as well. Statically linked library
binaries won't always be needed, true, but IMO the same idea should apply
-- they should be installed by default as it'll be impossible to link
something statically against them if they aren't, and where end-user
compiling must be assumed, it's entirely reasonable to assume those same
end-users may wish some of those compilations to be statically built.
Sure, if it's not too much of a hassle, give those users a USE flag
(since we're talking per-package enabling), that can of course be set
globally in make.conf if desired, and that defaults to installing static
as well as dynamic for most profiles. Embedded may wish to disable it by
default, and users may do so if desired, but in the general case, the
static libs should be there by default just in case. However, if it's
too much hassle, having both installed is the sane default, and there's
certainly INSTALL_MASK for those such as embedded that might be tight-up
on space or the required additional compiling resources.
--
Duncan - List replies preferred. No HTML msgs.
"Every nonfree program has a lord, a master --
and if you use the program, he is your master." Richard Stallman
--
gentoo-dev@gentoo.org mailing list
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [gentoo-dev] gentoo: static/dynamic linking libraries
2007-04-30 3:07 ` Roman Zimmermann
2007-04-30 3:35 ` Marius Mauch
@ 2007-04-30 19:00 ` Kevin F. Quinn
2007-05-01 7:28 ` Roman Zimmermann
1 sibling, 1 reply; 24+ messages in thread
From: Kevin F. Quinn @ 2007-04-30 19:00 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 1273 bytes --]
On Mon, 30 Apr 2007 05:07:00 +0200
Roman Zimmermann <mereandor@gmail.com> wrote:
> Am Montag 30 April 2007 00:11 schrieb Ciaran McCreesh:
> > On Sun, 29 Apr 2007 14:56:57 -0700
> >
> > Donnie Berkholz <dberkholz@gentoo.org> wrote:
> > > Anyone who wants to build a static binary wants the static libs.
> > > Given the difficulty in universally enabling or disabling their
> > > builds because of build-system differences, building them and
> > > tossing them in the trash with INSTALL_MASK, as Marius suggested,
> > > seems like the best way to go.
> >
> > The best way to go or the only viable short term solution?
Best way to go, IMO.
> That's the point! Universally disabling static builds can't be a
> longterm solution. The only sane way to do this is on a per ebuild
> basis.
The thing about static libraries, is that the ebuild that creates them
doesn't know whether anything else will want to use them. It may be
that in practice, most libraries are never used in their static form -
but the point is that the ebuild doesn't know enough information to
make the decision.
However, with INSTALL_MASK, the user makes the decision never to have
static binaries, and thus gets a system free of static libraries.
--
Kevin F. Quinn
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [gentoo-dev] gentoo: static/dynamic linking libraries
2007-04-29 21:50 ` Rémi Cardona
2007-04-29 21:56 ` Donnie Berkholz
@ 2007-05-01 2:49 ` Peter Gordon
2007-05-01 5:16 ` Donnie Berkholz
2007-05-01 9:16 ` Radoslaw Stachowiak
1 sibling, 2 replies; 24+ messages in thread
From: Peter Gordon @ 2007-05-01 2:49 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 2093 bytes --]
On Sun, 2007-04-29 at 23:50 +0200, Rémi Cardona wrote:
> Open Question part:
>
> Since I don't have any thing other than Gentoo : does anyone know how
> other distros handle static libs in their -dev packages?
Fedora's policy [1] is to only include static libraries when absolutely
necessary, such as with libpci or other libraries that ship *only*
static incarnations (though in these cases the packager is heavily
encouraged to pester the upstream developer(s) about building a shared
library as well); or for specific exceptions where full and satisfactory
reason is given for the inclusion of static libraries (such as, perhaps,
low-level rescue utilities like grub and others, though they generally
then need to explicitly be in a foo-static subpackage when built). All
such cases need to be approved by the Fedora Engineering Steering
Committee (FESCo).
> Does anyone care about static libs except for maybe really really low
> level stuff?
They are useful for rescue operations and whatnot, when a LiveCD or
similar is not handy; or perhaps when the computer cannot boot from an
alternative medium. That's the only major benefit I see of them.
> My Opinion part:
>
> I'd definitely would like to see them leave my system for good as I have
> no use for 99% of them whatsoever.
++
> Open Question part:
>
> Could some FEATURE disable static libs building by default in desktop
> profiles, with some (like the 5 packages Roman pointed out) using
> something like a RESTRICT?
>
Back when I used Gentoo (mid-2003 through Nov. 2005), I remember there
being a "-static" flag that could be set. I don't remember if that was
in FEATURES or USE though; and not all ebuilds honored it. :| Is there
similar functionality in modern Portage?
[1] http://fedoraproject.org/wiki/Packaging/Guidelines#StaticLibraries
--
Peter Gordon (codergeek42) / FSF & EFF Member
Gentoo Forums Global Moderator
GnuPG Public Key ID: 0xFFC19479 / Fingerprint:
DD68 A414 56BD 6368 D957 9666 4268 CB7A FFC1 9479
My Blog: http://thecodergeek.com/blog/
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [gentoo-dev] gentoo: static/dynamic linking libraries
2007-05-01 2:49 ` Peter Gordon
@ 2007-05-01 5:16 ` Donnie Berkholz
2007-05-01 9:16 ` Radoslaw Stachowiak
1 sibling, 0 replies; 24+ messages in thread
From: Donnie Berkholz @ 2007-05-01 5:16 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 805 bytes --]
Peter Gordon wrote:
> Back when I used Gentoo (mid-2003 through Nov. 2005), I remember there
> being a "-static" flag that could be set. I don't remember if that was
> in FEATURES or USE though; and not all ebuilds honored it. :| Is there
> similar functionality in modern Portage?
As was explained elsewhere in this thread by Marius, that's not what the
static flag controls.
For your convenience:
Marius Mauch wrote:
> What decision? That USE=static shouldn't be used for (not) installing
> static libraries is simply because the flag is used to control how
> (parts of) a package should be linked and global flags
> shouldn't be used for completely different purposes. That's been the
> case since the beginning, so I doubt you'll find any dicussion about it.
Thanks,
Donnie
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [gentoo-dev] gentoo: static/dynamic linking libraries
2007-04-30 19:00 ` [gentoo-dev] " Kevin F. Quinn
@ 2007-05-01 7:28 ` Roman Zimmermann
0 siblings, 0 replies; 24+ messages in thread
From: Roman Zimmermann @ 2007-05-01 7:28 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 1013 bytes --]
Am Montag 30 April 2007 21:00 schrieb Kevin F. Quinn:
> The thing about static libraries, is that the ebuild that creates them
> doesn't know whether anything else will want to use them. It may be
> that in practice, most libraries are never used in their static form -
> but the point is that the ebuild doesn't know enough information to
> make the decision.
That's true for now, but it won't anymore when use dependencies are
implemented. Then a corresponding useflag could be used to opt-in for static
builds.
> However, with INSTALL_MASK, the user makes the decision never to have
> static binaries, and thus gets a system free of static libraries.
Except the little detail that INSTALL_MASK definately breaks things. I tried
it yesterday.
The reason is that packages that build static libs (though --disable-static is
set) will depend on other static libs. With INSTALL_MASK in place those
static libs are never installed. Hence the build fails.
So it is not a working option.
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
^ permalink raw reply [flat|nested] 24+ messages in thread
* Re: [gentoo-dev] gentoo: static/dynamic linking libraries
2007-05-01 2:49 ` Peter Gordon
2007-05-01 5:16 ` Donnie Berkholz
@ 2007-05-01 9:16 ` Radoslaw Stachowiak
1 sibling, 0 replies; 24+ messages in thread
From: Radoslaw Stachowiak @ 2007-05-01 9:16 UTC (permalink / raw
To: gentoo-dev
On 01/05/07, Peter Gordon <codergeek42@gentoo.org> wrote:
> > Does anyone care about static libs except for maybe really really low
> > level stuff?
> They are useful for rescue operations and whatnot, when a LiveCD or
> similar is not handy; or perhaps when the computer cannot boot from an
> alternative medium. That's the only major benefit I see of them.
They are also very often used in chrooted environments.
--
radoslaw.
--
gentoo-dev@gentoo.org mailing list
^ permalink raw reply [flat|nested] 24+ messages in thread
end of thread, other threads:[~2007-05-01 9:19 UTC | newest]
Thread overview: 24+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-04-29 8:32 [gentoo-dev] gentoo: static/dynamic linking libraries Roman Zimmermann
2007-04-29 8:54 ` Jakub Moc
2007-04-29 10:36 ` Ciaran McCreesh
2007-04-29 16:43 ` Roman Zimmermann
2007-04-29 17:50 ` Marius Mauch
2007-04-29 17:56 ` Ciaran McCreesh
2007-04-29 18:21 ` Roman Zimmermann
2007-04-29 18:46 ` paul kölle
2007-04-29 19:04 ` Roman Zimmermann
2007-04-29 19:31 ` Marius Mauch
2007-04-29 19:36 ` Ciaran McCreesh
2007-04-29 20:05 ` Olivier Crête
2007-04-29 21:50 ` Rémi Cardona
2007-04-29 21:56 ` Donnie Berkholz
2007-04-29 22:11 ` Ciaran McCreesh
2007-04-30 3:07 ` Roman Zimmermann
2007-04-30 3:35 ` Marius Mauch
2007-04-30 7:28 ` Roman Zimmermann
2007-04-30 8:49 ` [gentoo-dev] " Duncan
2007-04-30 19:00 ` [gentoo-dev] " Kevin F. Quinn
2007-05-01 7:28 ` Roman Zimmermann
2007-05-01 2:49 ` Peter Gordon
2007-05-01 5:16 ` Donnie Berkholz
2007-05-01 9:16 ` Radoslaw Stachowiak
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox