1 |
On Sat, 8 Dec 2012 13:54:25 -0800 |
2 |
Grant <emailgrant@×××××.com> wrote: |
3 |
|
4 |
> > > > So they are not really the same thing at all.I'm not saying |
5 |
> > > > they're the same, I'm saying it looks like @preserved-rebuild |
6 |
> > > > does a subset of the things revdep-rebuild does. Why run |
7 |
> > > > @preserved-rebuild followed by revdep-rebuild if the end result |
8 |
> > > > is the same as running revdep-rebuild? I'm sure I'm missing |
9 |
> > > > something here but I don't know what it is. |
10 |
> > |
11 |
> > OK, I see what you mean. |
12 |
> > |
13 |
> > I'm a pessimistic sysadmin who's written a lot of code. I know bug |
14 |
> > factories when I see one :-) |
15 |
> > |
16 |
> > @preserved-rebuild is an excellent idea, but I haven't seen anything |
17 |
> > yet to convince me that it is bug-free enough yet to the point |
18 |
> > where I can drop revdep-rebuild entirely. So I still want the |
19 |
> > safety net of running revdep-rebuild occasionally just in case |
20 |
> > there's something @preserved-rebuild missed. |
21 |
> > |
22 |
> > It's also a good way to find bugs in @preserved-rebuild |
23 |
> |
24 |
> Got it. So @preserved-rebuild is meant to be a replacement for |
25 |
> revdep-rebuild but we aren't sure it's completely ready yet. In that |
26 |
> case, I think I'm ready to switch. |
27 |
> |
28 |
> BTW, what should I do about this: |
29 |
> |
30 |
> # revdep-rebuild -p |
31 |
> * Configuring search environment for revdep-rebuild |
32 |
> |
33 |
> * Checking reverse dependencies |
34 |
> * Packages containing binaries and libraries broken by a package |
35 |
> update |
36 |
> * will be emerged. |
37 |
> |
38 |
> * Collecting system binaries and libraries |
39 |
> * Found existing 1_files.rr |
40 |
> * Collecting complete LD_LIBRARY_PATH |
41 |
> * Found existing 2_ldpath.rr. |
42 |
> * Checking dynamic linking consistency |
43 |
> * Found existing 3_broken.rr. |
44 |
> * Assigning files to packages |
45 |
> * !!! /usr/lib64/libsvn_ra_neon-1.so.0.0.0 not owned by any package |
46 |
> is broken !!! |
47 |
> * /usr/lib64/libsvn_ra_neon-1.so.0.0.0 -> (none) |
48 |
> * !!! /usr/lib64/libwebkitgtk-1.0.so.0.11.2 not owned by any |
49 |
> package is broken !!! |
50 |
> * /usr/lib64/libwebkitgtk-1.0.so.0.11.2 -> (none) |
51 |
> * Generated new 4_raw.rr and 4_owners.rr |
52 |
> * Found some broken files, but none of them were associated with |
53 |
> known packages |
54 |
> * Unable to proceed with automatic repairs. |
55 |
> * The broken files are listed in 4_owners.rr |
56 |
|
57 |
These two files: |
58 |
|
59 |
/usr/lib64/libsvn_ra_neon-1.so.0.0.0 |
60 |
/usr/lib64/libwebkitgtk-1.0.so.0.11.2 |
61 |
|
62 |
are orphaned. By rights they should have been removed when the packages |
63 |
that installed them were removed/upgraded, but that doesn't always |
64 |
happen - ebuilds can make changes that portage can't see. |
65 |
|
66 |
The easy approach is to delete them, and any versioning symlinks that |
67 |
point to them in the same dirs, then possibly rebuild the packages that |
68 |
provided the originals. That would be subversion and webkit-gtk. Then |
69 |
run revdep-rebuild to see if anything complains. |
70 |
|
71 |
The longer (and quite instructive) way is to do what revdep-rebuild does |
72 |
- run ldd on every binary in every bin and lib dir, greping for the |
73 |
names of those files. that will tell you what links to them. |
74 |
|
75 |
I suppose it's also possible that @preserved-rebuild could be keeping |
76 |
the files around for it's own purposes and isn't ready to delete them |
77 |
yet (or maybe you just haven't run it yet). Run it anyway, see what |
78 |
happens. On second thoughts, do this first then the two paras above if |
79 |
that kind fo thing interests you at all. |
80 |
|
81 |
-- |
82 |
Alan McKinnon |
83 |
alan.mckinnon@×××××.com |