Gentoo Archives: gentoo-alt

From: Johan Hattne <johan.hattne@××××××××××××.de>
To: gentoo-alt@l.g.o
Subject: Re: [gentoo-alt] revdep-rebuild and install_name
Date: Tue, 08 May 2007 12:48:37
Message-Id: 86FAA146-8BB0-431B-AECC-5DABAB7CC0A4@embl-hamburg.de
In Reply to: Re: [gentoo-alt] revdep-rebuild and install_name by Fabian Groffen
1 On 7 May 2007, at 17:51, Fabian Groffen wrote:
2
3 > On 07-05-2007 17:02:23 +0200, Johan Hattne wrote:
4 >>
5 >> On May 7, 2007, at 00:55 , Fabian Groffen wrote:
6 >>
7 >>> b) I've been killing darwinistic specialties in ncurses and readline
8 >>> recently, on purpose
9 >>
10 >> :)
11 >>
12 >> Anyway, here's what I had in mind.
13
14 Going out on a limb here, but this is how I understand the problem.
15
16 (1) When linking against a shared/dynamic library the recorded
17 dependency is taken from the -install_name option used when the
18 library was built, or -o if -install_name was not supplied. I guess
19 the point is that if an executable is linked against a not-yet-
20 installed library, it'll work once the library is installed. So
21 libraries can't just be moved from their install location, because
22 everything that is and, interestingly, will be, linked against them
23 will look for the libraries in their old place.
24
25 (2) In non-prefix, libraries typically end up in /usr/lib*. If /usr
26 isn't on the the same partition as /, there may be problems if
27 something during boot needs /usr/lib to resolve its symbols. Hence,
28 some libraries need to be in /lib, and symlinks won't do.
29
30 > ncurses patch: no way, the main tree does it like that, so not
31 > going to
32 > change that.
33
34 ncurses is configured with --libdir=/lib. Then, whatever parts
35 aren't needed in /lib are moved to /usr/lib, with the effect that
36 moved items would no longer be found in /lib. What I tried to do was
37 to configure with --libdir=/usr/lib, move necessary things to /lib
38 and create links where the moved things used to be.
39
40 > readline patch: I don't understand it
41
42 readline is configured with --libdir=/usr/lib. Then all libraries
43 are moved to /lib. I wanted to create symlinks for all libraries
44 moved. I guess the intention would have been clearer if I had
45 configured with --libdir=/lib and skipped the move altogether (not
46 tested).
47
48 That was the idea and sorry for any confusion caused.
49
50 // Cheers; Johan
51 --
52 gentoo-alt@g.o mailing list

Replies

Subject Author
Re: [gentoo-alt] revdep-rebuild and install_name Fabian Groffen <grobian@g.o>