Summary: | /bin/grep needs /usr/lib/libpcre.so.0 | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Sandy McArthur <Sandy> |
Component: | [OLD] Core system | Assignee: | Matthew Kennedy (RETIRED) <mkennedy> |
Status: | RESOLVED FIXED | ||
Severity: | minor | ||
Priority: | High | ||
Version: | 1.0 RC6 r14 | ||
Hardware: | x86 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Sandy McArthur
2002-04-10 00:34:05 UTC
I can confirm this. When I shutdown my machine, the last thing before system halt is a message about /usr/lib/libpcre.so.X missing. My /usr and / are on different volumes. A quick ldd /bin/* shows that only grep is the looking for something in /usr/lib. There are a couple of solutions: 1. move libpcre into /lib 2. build /bin/grep without libprce 3. link libprce statically. Some research shows that other distros (eg. redhat and debian) are not doing 1 or 3. option 2 is the best because we get a vanilla /bin/grep with no libpcre but if the user wants a libpcre-grep, then dev-libs/libprce provides just that: /usr/bin/pcregrep. OK, I think your solution #2 is best. Here's what I would recommend, but it needs testing (especially in a bootstrap environment). in the DEPEND section: perl?( libpcre ) and then in src_compile(): use perl || myconf="${myconf} --disable-perl-regexp" That should compile without libpcre if you build it with -perl in USE :) I did a few test compiles and it seems there is no way to force a static compile of grep. The perl regexp feature was just added in the last release so not much out there is going to need it. I think changing the start of src_compile to: src_compile() { local myconf myconf="--disable-perl-regexp" [ -z "`use nls`" ] && myconf="--disable-nls" ...etc... would be the best solution. Fixed in CVS but masked (sys-apps/grep-2.5-r1) until more people test it. |