* [gentoo-dev] Relinking fun with libtool
@ 2011-08-16 22:30 Matti Bickel
2011-08-17 7:25 ` [gentoo-dev] " Duncan
0 siblings, 1 reply; 3+ messages in thread
From: Matti Bickel @ 2011-08-16 22:30 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 1279 bytes --]
Hi folks,
coming back from an extended vacation I found bug #351266[1] still open.
The root cause of this install failure seems to be libtool trying to
relink php's apache module. I'm not entirely sure what causes this (as
my system doesn't relink the library), but more importantly I failed to
find information on what's the best way to deal with this situation. So
far, every google hit I've found suggested that just going ahead w/o
relinking worked fine, which also seems to be the case in the referenced
bug.
So that leaves me with either:
a) remove the relink_command from libphp5.la before calling emake
install-sapi
b) modifying the libdir in libphp5.la before calling emake install-sapi
to point to $D/usr/lib/...
c) finding out why libtool decides it needs to relink at all.
Clearly, requiring users to edit the la file by hand is no solution.
I've not found other ebuilds dealing with relinking, so is this me just
misunderstanding how libtool works or an issue with php's build system?
I'm quite at a loss here. I'd be glad if somebody with more libtool
knowledge can shed some light (or point me to some docs) on why
relinking is necessary here at all and how to fix this breakage.
[1]https://bugs.gentoo.org/show_bug.cgi?id=351266
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 262 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
* [gentoo-dev] Re: Relinking fun with libtool
2011-08-16 22:30 [gentoo-dev] Relinking fun with libtool Matti Bickel
@ 2011-08-17 7:25 ` Duncan
2011-08-17 7:28 ` Ciaran McCreesh
0 siblings, 1 reply; 3+ messages in thread
From: Duncan @ 2011-08-17 7:25 UTC (permalink / raw
To: gentoo-dev
Matti Bickel posted on Wed, 17 Aug 2011 00:30:43 +0200 as excerpted:
> Hi folks,
>
> coming back from an extended vacation I found bug #351266[1] still open.
> The root cause of this install failure seems to be libtool trying to
> relink php's apache module.
> So that leaves me with either:
> a) remove the relink_command from libphp5.la before calling emake
> install-sapi
> b) modifying the libdir in libphp5.la before calling emake
> install-sapi to point to $D/usr/lib/...
> c) finding out why libtool decides it needs to relink at all.
>
> Clearly, requiring users to edit the la file by hand is no solution.
> I'd be glad if somebody with more libtool knowledge can shed some light
> (or point me to some docs) on why relinking is necessary here at all
> and how to fix this breakage.
>
> [1]https://bugs.gentoo.org/show_bug.cgi?id=351266
I see flameeyes commented (once) on the bug. What I know about libtool
is from a user-perspective, but nearly 100% based on what flameeyes has
written on the topic in various blog posts, etc, obviously from a
developer perspective in most cases. He has blogged about libtool and
*.la files numerous times and I believe has a developer-focused libtool
guide up.
So I'd definitely recommend that direction. Whether you read the blogs
first and then ping him if necessary, or ping him for more directed help
first is up to you, but that's definitely where I'd start looking, for
sure.
...
Meanwhile, purely from my gentoo user aka gentoo-based system sysadmin
perspective, I've noted more and more gentoo packages with the USE=static-
libs flag controlling both the generation of the *.a libs and their *.la
file counterparts, thus gradually reducing the *.la file pain-points for
many users, tho if removal order isn't maintained, it can cause more pain
temporarily, as *.la files from other packages may well reference those
removed. Two other related factors are worth noting in this regard:
1) Portage's FEATURES=fixlafiles (and the lafilefixer package/script, tho
without FEATURES=unmerge-orphans set it can be problematic if run
manually due to the fact that it alters files behind portage's back) can
be VERY helpful in this regard. Again, user perspective so I don't know
if that might be the difference you're seeing between the behavior on
your systems and that of the bug reporter's, but the general idea is to
fix *.la files to point to the libraries directly, instead of to other
*.la files, thus avoiding issues when lower level depencencies remove
their *.la files in the first place (with the feature) or fixing the
problem once it occurs (with the script run manually).
2) It remains a bit of a bold step, suitable mainly for advanced users
who can trace resulting issues and revert the policy for individual
packages (using /etc/portage/env/*/* files, for instance), but for many
of the users who aren't aware of any specific reason to have static
libraries available on their system at all, setting INSTALL_MASK (and
PKG_INSTALL_MASK if appropriate) to include *.la, thus eliminating the
problem files entirely, can be a viable option,
*WITH*ONE*MAJOR*EXCEPTION, the libtool package itself. Here, I have the
general (PKG_)INSTALL_MASK="*.la" , but empty the variable(s) in
/etc/portage/env/sys-devel/libtool , so the libtool package's own *.la
files aren't touched. (Certain build systems' config step fails if they
can't find libtool's own *.la files so those must remain, but they are
the only ones left on my system! =:^)
So by all means either read up on flameeyes' libtool blog posts or
contact him, but it may well be possible to simply eliminate that problem
*.la file, at least for those without USE=static-libs set for its
containing package, entirely, at the package level for you as a
developer, and/or at the system level for gentoo users aka gentoo-based-
system sysadmins, like me, and possibly the user reporting the bug in
question, if they aren't aware of any specific reason why the package
containing that *.la needs built with static-libs support at all.
--
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
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [gentoo-dev] Re: Relinking fun with libtool
2011-08-17 7:25 ` [gentoo-dev] " Duncan
@ 2011-08-17 7:28 ` Ciaran McCreesh
0 siblings, 0 replies; 3+ messages in thread
From: Ciaran McCreesh @ 2011-08-17 7:28 UTC (permalink / raw
To: gentoo-dev
[-- Attachment #1: Type: text/plain, Size: 304 bytes --]
On Wed, 17 Aug 2011 07:25:22 +0000 (UTC)
Duncan <1i5t5.duncan@cox.net> wrote:
> So by all means either read up on flameeyes' libtool blog posts or
> contact him, but it may well be possible to simply eliminate that
> problem *.la file
Uhm, the failure is in src_install.
--
Ciaran McCreesh
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2011-08-17 7:33 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-08-16 22:30 [gentoo-dev] Relinking fun with libtool Matti Bickel
2011-08-17 7:25 ` [gentoo-dev] " Duncan
2011-08-17 7:28 ` Ciaran McCreesh
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox