Bug 191426 - gnome-base/gnome-vfs has automagic dependencies on sys-apps/attr and sys-apps/acl
|
Bug#:
191426
|
Product: Gentoo Linux
|
Version: unspecified
|
Platform: x86
|
|
OS/Version: Linux
|
Status: RESOLVED
|
Severity: normal
|
Priority: P2
|
|
Resolution: FIXED
|
Assigned To: gnome@gentoo.org
|
Reported By: abraham@alumni.uv.es
|
|
Component: GNOME
|
|
|
URL:
http://bugzilla.gnome.org/show_bug.cgi?id=493475
|
|
Summary: gnome-base/gnome-vfs has automagic dependencies on sys-apps/attr and sys-apps/acl
|
|
Keywords:
|
|
Status Whiteboard:
|
|
Opened: 2007-09-05 19:29 0000
|
When trying to merge gnome-vfs-1.18.1 the following compilation error occurs:
i686-pc-linux-gnu-gcc -shared .libs/file-method.o .libs/fstype.o
.libs/file-method-acl.o .libs/inotify-kernel.o .libs/inotify-missing.o
.libs/inotify-path.o .libs/inotify-sub.o .libs/inotify-helper.o
.libs/inotify-diag.o -Wl,--rpath
-Wl,/var/tmp/portage/gnome-base/gnome-vfs-2.18.1/work/gnome-vfs-2.18.1/libgnomevfs/.libs
/usr/lib/libattr.so /lib/libacl.so -L/usr/lib /usr/lib/libfam.so
/usr/lib/libgmodule-2.0.so -ldl /usr/lib/libgconf-2.so /usr/lib/libORBit-2.so
/usr/lib/libgthread-2.0.so /usr/lib/libgobject-2.0.so /usr/lib/libglib-2.0.so
../libgnomevfs/.libs/libgnomevfs-2.so -lutil -lrt -march=athlon-xp -pthread
-Wl,-soname -Wl,libfile.so -o .libs/libfile.so
i686-pc-linux-gnu-gcc: /usr/lib/libattr.so: No such file or directory
i686-pc-linux-gnu-gcc: /lib/libacl.so: No such file or directory
Apparently, when it tries to build libfile.so, it includes as shared objects
/usr/lib/libattr.so and /lib/libacl.so; however, there aren't dynamic versions
of these libraries, only static:
$ whereis libattr libacl
libattr: /usr/lib/libattr.la /usr/lib/libattr.a /usr/libexec/libattr.la
/usr/libexec/libattr.a
libacl: /lib/libacl.a /lib/libacl.la /usr/lib/libacl.a /usr/lib/libacl.la
Reproducible: Always
Steps to Reproduce:
1. emerge gnome-vfs
2.
3.
Actual Results:
Compilation error
Expected Results:
Correct installation
emerge info:
Portage 2.1.2.12 (default-linux/x86/2007.0, gcc-3.4.6, glibc-2.5-r4,
2.6.17-gentoo-r4 i686)
=================================================================
System uname: 2.6.17-gentoo-r4 i686 AMD Athlon(tm) XP 1700+
Gentoo Base System release 1.12.9
Timestamp of tree: Sun, 02 Sep 2007 22:50:01 +0000
distcc 2.16 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632)
[disabled]
ccache version 2.4 [enabled]
app-shells/bash: 3.2_p17
dev-java/java-config: 1.3.7, 2.0.33-r1
dev-lang/python: 2.3.5-r3, 2.4.4-r4
dev-python/pycrypto: 2.0.1-r6
dev-util/ccache: 2.4-r7
sys-apps/baselayout: 1.12.9-r2
sys-apps/sandbox: 1.2.17
sys-devel/autoconf: 2.13, 2.61-r1
sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils: 2.17
sys-devel/gcc-config: 1.3.16
sys-devel/libtool: 1.5.24
virtual/os-headers: 2.6.21
ACCEPT_KEYWORDS="x86"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -pipe -march=athlon-xp"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/X11/xkb /usr/share/texmf/dvipdfm/config/
/usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/
/usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/revdep-rebuild
/etc/splash /etc/terminfo"
CXXFLAGS="-O2 -pipe -march=athlon-xp"
DISTDIR="/usr/portage/distfiles"
FEATURES="ccache distlocks metadata-transfer sandbox sfperms strict"
GENTOO_MIRRORS="http://ftp.caliu.info/pub/gentoo/
http://mirror.ovh.net/gentoo-distfiles/"
LANG="es_ES.UTF-8@euro"
LC_ALL="es_ES.UTF-8@euro"
LINGUAS="es en"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress
--force --whole-file --delete --delete-after --stats --timeout=180
--exclude=/distfiles --exclude=/local --exclude=/packages
--filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="3dnow X a52 acpi alsa apache2 asf audiofile avi bash-completion bidi
bitmap-fonts bzip2 bzlib canna cdr cjk cli cracklib crypt cups dbus dga
directfb divx4linux dri dvb dvd dvdr dvdread evo exif fbcon fftw firefox flac
foomaticdb freewnn ftp gb gcj gd gdbm gif glut gmp gnome gpm gtk gtk2 hal iconv
imlib iodbc isdnlog java jikes jpeg mad memlimit midi mime mmx mozilla mpeg msn
mudflap nas nls nptl nptlonly nsplugin nvidia odbc offensive openal opengl
openmp pam pcre pdflib perl png pnp posix ppds pppd quicktime readline
reflection session sharedmem simplexml spell spl ssl svg svga sysvipc szip
tcltk tcpd tetex theora threads tiff truetype truetype-fonts type1-fonts
unicode usb videos vorbis win32codecs wmf x86 xine xml xorg xprint xv xvid
zlib" ALSA_CARDS="emu10k1" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare
dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw
multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="kbd
mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216
lcdm001 mtxorb ncurses text" LINGUAS="es en" USERLAND="GNU"
VIDEO_CARDS="nvidia"
Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LDFLAGS, PORTAGE_COMPRESS,
PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
there is something wrong on your system:
$ whereis libattr libacl
libattr: /lib/libattr.so /usr/lib/libattr.la /usr/lib/libattr.so
/usr/lib/libattr.a
libacl: /lib/libacl.so /usr/lib/libacl.a /usr/lib/libacl.so
trying reinstalling acl and attr before recompiling gnome-vfs please.
Well, there must be something really wrong, since neither sys-apps/attr nor
sys-apps/acl are installed in my system... Are they strictly required by
system? Or just optional?
Anyhow I'm going to install both them and try, I'll tell you then.
Right, after merging sys-apps/acl and sys-apps/attr I could install gnome-vfs
properly. However, I wonder whether those packages should have been installed
automaticly through internal dependencies?
BTW, dunno if this is relevant, but I wasn't reinstalling gnome-vfs, it was
part of a fresh install of gnome-light.
$ equery depends attr
sys-apps/acl-2.2.44 (>=sys-apps/attr-2.4)
sys-apps/coreutils-6.9-r1 (acl? sys-apps/attr)
$ equery depends acl
app-editors/vim-7.1.087 (acl & kernel_linux? sys-apps/acl)
net-misc/rsync-2.6.9-r3 (acl & kernel_linux? sys-apps/acl)
sys-apps/coreutils-6.9-r1 (acl? sys-apps/acl)
so in short it's a dependency of coreutils if you have acl USE flag on.
coreutils and rsync are system packages.
That doesn't explain why you have this files you mentionned without the
packages they come from. @herd if somebody could enlighten me :)
it seems gnome-vfs checks for attr and acl at configure time but got tricked
because you don't have the .so but there is no switch to turn it off or on. I
guess we'll have to fix it and bug upstream about this.
*** Bug 194930 has been marked as a duplicate of this bug. ***
got a fix for this and the kerberos bug, need some more polish and I'll fill an
upstream bug.
fix is in CVS fill free to reopen if it doesn't solve your problem.
The problem is back in gnome-base/gnome-vfs-2.20.1:
checking for getxattr in -lattr... yes
checking for acl_get_file in -lacl... yes
/bin/sh ../libtool --mode=link hppa2.0-unknown-linux-gnu-gcc -std=gnu99 -O1
-pi
pe -mschedule=8000 -march=2.0 -ggdb -Wall -o libfile.la -rpath
/usr/lib/gnome-
vfs-2.0/modules -export_dynamic -avoid-version -module -no-undefined
file-method
.lo fstype.lo file-method-acl.lo inotify-kernel.lo inotify-missing.lo
inotify-pa
th.lo inotify-sub.lo inotify-helper.lo inotify-diag.lo -lattr -lacl -lfam
-pthr
ead -lgmodule-2.0 -ldl -lgconf-2 -lORBit-2 -lgthread-2.0 -lrt -lgobject-2.0
-lgl
ib-2.0 ../libgnomevfs/libgnomevfs-2.la -lutil -lrt -lrt
This is in the modules/ subdir and is introduced through ACL_LIBS in
configure.in. The current 2.2.0 patch in the tree only adds the configure
option but doesn't prevent ACL_LIBS from getting set, so we need another patch:
jeroen@astrid /keeps/gentoo/cvs/gentoo-x86/gnome-base/gnome-vfs $ cat
files/gnome-vfs-2.20.1-automagic-deps.patch
--- configure.in. 2007-11-30 04:15:01.000000000 +0100
+++ configure.in 2007-11-30 04:16:21.000000000 +0100
@@ -1102,6 +1102,7 @@
AS_HELP_STRING([--disable-acl],[Don't use libacl support]),
[],[enable_acl=yes])
+if test "x$enable_acl" = "xyes"; then
AC_CHECK_LIB(attr,getxattr,[ACL_LIBS="$ACL_LIBS -lattr"])
AC_CHECK_LIB(acl,acl_get_file,[ACL_LIBS="$ACL_LIBS -lacl"])
AC_CHECK_LIB(sec,acl,[ACL_LIBS="$ACL_LIBS -lsec"])
@@ -1189,6 +1190,8 @@
fi
AC_SUBST(ACL_LIBS)
+fi
+
AM_CONDITIONAL(HAVE_POSIX_ACL, test x"$have_posix_acl_support" = x"yes")
AM_CONDITIONAL(HAVE_SOLARIS_ACL, test x"$have_solaris_acl_support" = x"yes")
yes you are right. you can leave the AC_SUBST out of the if/fi because it's set
to "" before the checks. I'll take care of this later this morning unless you
beat me to it.
(In reply to comment #9)
> yes you are right. you can leave the AC_SUBST out of the if/fi because it's set
> to "" before the checks. I'll take care of this later this morning unless you
> beat me to it.
Committed the fix with the slight adaptation you suggested. Closing for now.