1 |
On Mon, Sep 19, 2011 at 1:41 PM, Michael Mol <mikemol@×××××.com> wrote: |
2 |
> On Mon, Sep 19, 2011 at 4:33 PM, Mark Knecht <markknecht@×××××.com> wrote: |
3 |
>> On Mon, Sep 19, 2011 at 7:36 AM, Michael Mol <mikemol@×××××.com> wrote: |
4 |
>>> On Mon, Sep 19, 2011 at 10:20 AM, Allan Gottlieb <gottlieb@×××.edu> wrote: |
5 |
>> <SNIP> |
6 |
>>>> ajglap gottlieb # revdep-rebuild; revdep-rebuild --library '/usr/lib64/libpng14.so.14' |
7 |
>> <SNIP> |
8 |
>>> |
9 |
>>> Is there no automated way to catch these? --library expects an |
10 |
>>> argument; how do I know which libraries to feed it? |
11 |
>> |
12 |
>> My question exactly. It's not likeyou can look at just names of |
13 |
>> libraries as I think to do this right you've got to look at every |
14 |
>> revision of every library on the system, don't you? |
15 |
>> |
16 |
>> It's possible that this problem could exist for a long while if a |
17 |
>> program doesn't get used much... |
18 |
> |
19 |
> Based on subsequent discussion since I wrote that question, I think |
20 |
> the answer is, "currently, no." Ebuillds would need more metadata, and |
21 |
> portage would need to be more aware of deep dependencies. |
22 |
> |
23 |
> I'm not sure of revdep-rebuild's angle, or how it might be able to be |
24 |
> improved to detect errors that don't come from broken linkage. |
25 |
> -- |
26 |
> :wq |
27 |
|
28 |
OK, I saw that comment but didn't grasp that it's the answer. Could be. |
29 |
|
30 |
Alternatively, in Michael's example earlier, I don't think the ldd |
31 |
results for bash are changed (are they?) when ncurses is updated: |
32 |
|
33 |
[QUOTE] |
34 |
$ ldd /bin/bash |
35 |
linux-vdso.so.1 => (0x00007fffbafff000) |
36 |
libncurses.so.5 => /lib64/libncurses.so.5 (0x00007f0a4c278000) |
37 |
libdl.so.2 => /lib64/libdl.so.2 (0x00007f0a4c074000) |
38 |
libc.so.6 => /lib64/libc.so.6 (0x00007f0a4bce4000) |
39 |
/lib64/ld-linux-x86-64.so.2 (0x00007f0a4c4ce000) |
40 |
[/QUOTE] |
41 |
|
42 |
It seems to me this is tending toward something similar to slots, |
43 |
isn't it? If one package (bash) needs a specific version then can't we |
44 |
find it using ldd (on every package on the system unfortunately) and |
45 |
ensure that the needed .so files aren't removed? |
46 |
|
47 |
/lib64/libncurses.so.5 & /lib64/libncurses.so.6 could both exist on |
48 |
the system even if both version of the ncurses package don't. |
49 |
|
50 |
I suspect this is mostly what revdep-rebuild is already doing, and I |
51 |
also suspect my view of the problem is far too remedial... |
52 |
|
53 |
Thanks, |
54 |
Mark |