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 |