On Sat, Dec 26, 2009 at 12:55 PM, Duncan <[email protected]> wrote: > Xi Shen posted on Sat, 26 Dec 2009 12:31:24 +0800 as excerpted: > >> my system is gentoo amd64, kde 4.3, and have recently updated. last time >> i emerged chromium and it works fine. but after updated the world, my >> chromium cannot start up. it reports segment fault. > > Did you do a revdep-rebuild after the last update? Chances are, one of > chromium's dependencies was updated, changing its abi, and chromium (and > perhaps other packages) that depend on it need rebuilt to match the new > abi. > > It's revdep-rebuild that takes care of this, but if you don't run it > routinely, you'll likely have a BUNCH of stuff to rebuild. FWIW, > lafilefixer (with the --justfixit option) can reduce that bunch of stuff > by fixing *.la files that point to other *.la files, to point to the > libraries directly instead. > > Also, you may wish to read up on LDFLAGS="-Wl,--as-needed" and consider > using it too, as it helps kill indirect dependencies. (Say application X > uses library Y, which depends on library Z, but application X doesn't use > any of library Z's functionality directly, so it shouldn't need to > directly depend on it, and shouldn't need to be rebuilt when only library > Z changes. Only library Y would need rebuilt. The as-needed LDFLAGS > help this happen, thus reducing substantially the number of rebuilds > needed, but at a cost of occasionally causing a legit depend to be > missed. But flameeyes has been working on this as one of his projects, > so it doesn't happen very often with at least mainline packages any more, > tho it might in obscure corner cases, the reason it's not yet the > default. So... consider it carefully as there's a major upside and > generally only obscure case downside, but do be aware of the issues if > you decide to use it.) > > Of course, the LDFLAGS as-needed won't help much until you've recompiled > a good part of your system at least once with it in place. But the > lafilefixer thing is just about perfect -- very little downside, it > doesn't take long to run compared to even a couple package rebuilds, and > it can be put to use immediately after you merge it! =:^) > > Together, these reduce the number of revdep-rebuilds SUBSTANTIALLY, and I > run it after every update session. (Actually, my revdep-rebuild invoking > script automatically runs lafilefixer --justfixit before it runs revdep- > rebuild, just to be sure, so I only invoke that script after the update > and it takes care of both.) > > -- > 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 > > >
yes, i have run the revdep-rebuild immediately after update the world. i think you are correct. since chromium is not a main stream package, indirect library dependence may cause this kind of problem. thanks a lot. -- Best Regards, David Shen http://twitter.com/davidshen84/ http://meme.yahoo.com/davidshen84/
