Re: [gentoo-user] libselinux.so.1 dependency problems

2008-07-08 Thread Vladimir G. Ivanovic

Andreas,

Thanks very much for the information.

Yes! I do seem to have *.la files with -lselinux in them. It looks 
like I'm going to have to do some purging and re-emerging to fix things.


Thanks again.

--- Vladimir

on 07/07/2008 04:49 PM Andreas Niederl said the following:

Hi,

Vladimir G. Ivanovic wrote:
[...]
It turns out that many, many executables require libselinux.so.1, 
despite what the documentation of --depclean in man emerge says 
(or what I think it says -- is this a bug or operator error?)


Sadly sys-apps/coreutils is one of them.
Recent versions - including stable - do an autodetection for libselinux 
and link against it even when emerged with USE=-selinux[1].


This should be no problem for systems which never saw libselinux (i.e. 
installed from 2008.0) but unmerging this library on older systems can 
be quite problematic.



I cobbled together a system that limps along thanks to the 2008.0 
beta   LiveCD (which does not depend on libselinux.so.1), but I am 
unable to emerge a large number of packages that seem to silently 
depend on libselinux.so.1: the ebuilds fail when ld cannot find 
-lselinux.

[...]
What gives? Where does the -lselinux come from? How can I get rid 
of   this maddening dependency?


I think that libtool is the main offender here.
At least on my system somehow '-lselinux' made its way into a bunch of 
.la files and provoked these errors.


So I searched for the packages with broken libtool archive files and 
manually emerged them (with --oneshot).
I figured out the correct order by using the trial-and-error method but 
you could do something like the get_build_order() function in the 
revdep-rebuild script.


The command I've used for searching is as follows (requires 
app-portage/portage-utils):

grep -l -r --include='*.la' selinux /usr/lib | qfile --nocolor -f - | \
cut -d' ' -f 1 | sort | uniq

Another way might be to look at the line before the error message and 
rebuild the package containing the library right before the '-lselinux' 
flag.



hth,
Andi

[1] http://bugs.gentoo.org/show_bug.cgi?id=230073


--
Vladimir G. Ivanovic




signature.asc
Description: OpenPGP digital signature


Re: [gentoo-user] libselinux.so.1 dependency problems

2008-07-07 Thread Andreas Niederl

Hi,

Vladimir G. Ivanovic wrote:
[...]
It turns out that many, many executables require libselinux.so.1, 
despite what the documentation of --depclean in man emerge says (or 
what I think it says -- is this a bug or operator error?)


Sadly sys-apps/coreutils is one of them.
Recent versions - including stable - do an autodetection for libselinux 
and link against it even when emerged with USE=-selinux[1].


This should be no problem for systems which never saw libselinux (i.e. 
installed from 2008.0) but unmerging this library on older systems can 
be quite problematic.



I cobbled together a system that limps along thanks to the 2008.0 beta   
LiveCD (which does not depend on libselinux.so.1), but I am unable to 
emerge a large number of packages that seem to silently depend on 
libselinux.so.1: the ebuilds fail when ld cannot find -lselinux.

[...]
What gives? Where does the -lselinux come from? How can I get rid of   
this maddening dependency?


I think that libtool is the main offender here.
At least on my system somehow '-lselinux' made its way into a bunch of 
.la files and provoked these errors.


So I searched for the packages with broken libtool archive files and 
manually emerged them (with --oneshot).
I figured out the correct order by using the trial-and-error method but 
you could do something like the get_build_order() function in the 
revdep-rebuild script.


The command I've used for searching is as follows (requires 
app-portage/portage-utils):

grep -l -r --include='*.la' selinux /usr/lib | qfile --nocolor -f - | \
cut -d' ' -f 1 | sort | uniq

Another way might be to look at the line before the error message and 
rebuild the package containing the library right before the '-lselinux' 
flag.



hth,
Andi

[1] http://bugs.gentoo.org/show_bug.cgi?id=230073
--
gentoo-user@lists.gentoo.org mailing list



[gentoo-user] libselinux.so.1 dependency problems

2008-07-06 Thread Vladimir G. Ivanovic
Since the package sys-libs/libselinux is masked --- at least on AMD64 
it is --- I ran


   emerge --depclean --verbose sys-libs/libselinux

and the only reverse dependency it reported was python-selinux. So I 
removed both packages and severely broke my system.


It turns out that many, many executables require libselinux.so.1, 
despite what the documentation of --depclean in man emerge says 
(or what I think it says -- is this a bug or operator error?)


I cobbled together a system that limps along thanks to the 2008.0 beta 
  LiveCD (which does not depend on libselinux.so.1), but I am unable 
to emerge a large number of packages that seem to silently depend on 
libselinux.so.1: the ebuilds fail when ld cannot find -lselinux.


I do not have USE=selinux anywhere, and I never have. There is no 
selinux in the output of emerge --info, and none of the build 
environment files I've checked contain selinux. libselinux.so.1 is 
not in directory in /etc/ld.so.conf.  Adding USE=-selinux on the 
command line or in /etc/make.conf does not make any difference.


revdep-rebuild lists 37 packages, in particular many GNOME packages, 
that depend on libselinux.so.1, but I don't seem to be able to 
re-emerge any of them.


I ran

for pkg in $(equery depends libselinux | cut -d' ' -f1); do
eix -e $(qatom ${pkg} | cut -d' ' -f2)
done

and every package shown that depends on libselinux has actually been 
installed with -selinux. (BTW, revdep-rebuild and equery depends 
don't agree on which packages depend on libselinux.so.1.)


What gives? Where does the -lselinux come from? How can I get rid of 
  this maddening dependency?


Thanks for any help.

BTW, as a temporary measure, I've created an empty libselinux.so.1 
that seems to satisfy ld.


--- Vladimir

--
Vladimir G. Ivanovic

--
gentoo-user@lists.gentoo.org mailing list