Upgrading dev-scheme/guile to version 1.8.1 makes a re-emerge of x11-misc/xbindkeys to fail. Reproducible: Always Steps to Reproduce: 1. update dev-scheme/guile to version 1.8.1 2. re-emerge x11-misc/xbindkeys 3. Actual Results: x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I. -march=nocona -pipe -O2 -DFORK_FLAG=1 -DGUILE_FLAG=1 -I. -Wall -march=nocona -pipe -O2 -c xbindkeys.c x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I. -march=nocona -pipe -O2 -DFORK_FLAG=1 -DGUILE_FLAG=1 -I. -Wall -march=nocona -pipe -O2 -c keys.c x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I. -march=nocona -pipe -O2 -DFORK_FLAG=1 -DGUILE_FLAG=1 -I. -Wall -march=nocona -pipe -O2 -c options.c x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I. -march=nocona -pipe -O2 -DFORK_FLAG=1 -DGUILE_FLAG=1 -I. -Wall -march=nocona -pipe -O2 -c get_key.c x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I. -march=nocona -pipe -O2 -DFORK_FLAG=1 -DGUILE_FLAG=1 -I. -Wall -march=nocona -pipe -O2 -c grab_key.c options.c: In function 'xbindkey_wrapper': options.c:772: warning: implicit declaration of function 'rpl_malloc' options.c:772: warning: assignment makes pointer from integer without a cast options.c:788: warning: assignment makes pointer from integer without a cast options.c:832: warning: assignment makes pointer from integer without a cast keys.c: In function 'add_key': keys.c:81: warning: implicit declaration of function 'rpl_malloc' keys.c:81: warning: cast to pointer from integer of different size keys.c: In function 'set_keysym': keys.c:257: warning: cast to pointer from integer of different size keys.c: In function 'set_keycode': keys.c:272: warning: cast to pointer from integer of different size keys.c: In function 'set_button': keys.c:288: warning: cast to pointer from integer of different size x86_64-pc-linux-gnu-gcc -march=nocona -pipe -O2 -DFORK_FLAG=1 -DGUILE_FLAG=1 -I. -Wall -march=nocona -pipe -O2 -o xbindkeys xbindkeys.o keys.o options.o get_key.o grab_key.o -L/usr/lib64 -lX11 -lguile xbindkeys.o: In function `adjust_display': xbindkeys.c:(.text+0x112): undefined reference to `rpl_malloc' keys.o: In function `set_button': keys.c:(.text+0x132): undefined reference to `rpl_malloc' keys.o: In function `set_keycode': keys.c:(.text+0x187): undefined reference to `rpl_malloc' keys.o: In function `set_keysym': keys.c:(.text+0x1dd): undefined reference to `rpl_malloc' keys.o: In function `add_key': keys.c:(.text+0x5c9): undefined reference to `rpl_malloc' options.o:options.c:(.text+0x1802): more undefined references to `rpl_malloc' follow /usr/lib64/libguile.so: undefined reference to `pthread_create' /usr/lib64/libguile.so: undefined reference to `pthread_getspecific' /usr/lib64/libguile.so: undefined reference to `pthread_attr_getstack' /usr/lib64/libguile.so: undefined reference to `pthread_detach' /usr/lib64/libguile.so: undefined reference to `pthread_once' /usr/lib64/libguile.so: undefined reference to `pthread_key_create' /usr/lib64/libguile.so: undefined reference to `pthread_getattr_np' /usr/lib64/libguile.so: undefined reference to `pthread_sigmask' /usr/lib64/libguile.so: undefined reference to `pthread_mutexattr_settype' /usr/lib64/libguile.so: undefined reference to `pthread_mutexattr_init' /usr/lib64/libguile.so: undefined reference to `pthread_setspecific' collect2: ld returned 1 exit status make: *** [xbindkeys] Error 1 !!! ERROR: x11-misc/xbindkeys-1.7.3 failed. Call stack: ebuild.sh, line 1611: Called dyn_compile ebuild.sh, line 968: Called qa_call 'src_compile' environment, line 1279: Called src_compile xbindkeys-1.7.3.ebuild, line 28: Called die Portage 2.1.2-r3 (default-linux/amd64/2006.1, gcc-4.1.1, glibc-2.5-r0, 2.6.19-gentoo-r1 x86_64) ================================================================= System uname: 2.6.19-gentoo-r1 x86_64 Intel(R) Core(TM)2 CPU 6600 @ 2.40GHz Gentoo Base System version 1.12.9 Timestamp of tree: Wed, 24 Jan 2007 18:50:01 +0000 distcc 2.18.3 x86_64-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ccache version 2.4 [enabled] dev-java/java-config: 1.3.7, 2.0.31-r3 dev-lang/python: 2.4.4 dev-python/pycrypto: 2.0.1-r5 dev-util/ccache: 2.4-r6 sys-apps/sandbox: 1.2.18.1 sys-devel/autoconf: 2.13, 2.61 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.14 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.19.2-r1 ACCEPT_KEYWORDS="amd64 ~amd64" AUTOCLEAN="yes" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=nocona -pipe -O2" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config" CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/splash /etc/terminfo /etc/texmf/web2c" CXXFLAGS="-march=nocona -pipe -O2" DISTDIR="/usr/portage/distfiles" EMERGE_DEFAULT_OPTS="--alphabetical" FEATURES="autoconfig ccache distlocks metadata-transfer parallel-fetch sandbox sfperms strict" GENTOO_MIRRORS="http://trumpetti.atm.tut.fi/gentoo/ ftp://ftp.du.se/pub/os/gentoo/" LINGUAS="sv sv_SE" MAKEOPTS="-j4" 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" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="X aac accessibility alsa amd64 apache2 arts asf audiofile avahi avi bash-completion berkdb bitmap-fonts bzip2 cairo cdb cdr cli cracklib crypt css cups curl dbus divx divx4linux dlloader dri dvd dvdr dvdread encode esd exi exscalibar ffmpeg foomaticdb fortran freetype gdbm gif gimp-print glut gmp gpm guile hal howl iconv icq idn imagemagick inlib ipod ipv6 isdnlog jack java jingle jpeg kde kqemu lcms libcaca libg++ live mad mikmod mng motif mp3 mp4 mplayer msn musicbrainz mysql nas ncurses network nls nptl nptlonly ogg opengl oss pcre pdf perl php pmount png ppds pppd python qt3 qt3support qt4 quicktime rar readline realmedia reflection samba scanner sdl session slang spell spl ssl svg tcltk tcpd tetex tiff truetype truetype-fonts type1-fonts udev unicode usb v4l v4l2 vim-syntax visualization vorbiz whash wifi wmp x264 xcomposite xml xml2 xorg xscreensaver xv xvid zip zlib" ALSA_CARDS="intel-hda" 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="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="sv sv_SE" USERLAND="GNU" VIDEO_CARDS="nv nvidia vesa" Unset: CTARGET, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, PORTAGE_RSYNC_EXTRA_OPTS
try rebuilding guile-1.8 with threads USE flag
(In reply to comment #1) > try rebuilding guile-1.8 with threads USE flag > Compile still fails of xbindkeys x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I. -march=nocona -pipe -O2 -DFORK_FLAG=1 -DGUILE_FLAG=1 -I. -Wall -march=nocona -pipe -O2 -c xbindkeys.c x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I. -march=nocona -pipe -O2 -DFORK_FLAG=1 -DGUILE_FLAG=1 -I. -Wall -march=nocona -pipe -O2 -c keys.c x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I. -march=nocona -pipe -O2 -DFORK_FLAG=1 -DGUILE_FLAG=1 -I. -Wall -march=nocona -pipe -O2 -c options.c x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I. -march=nocona -pipe -O2 -DFORK_FLAG=1 -DGUILE_FLAG=1 -I. -Wall -march=nocona -pipe -O2 -c get_key.c keys.c: In function 'add_key': keys.c:81: warning: implicit declaration of function 'rpl_malloc' keys.c:81: warning: cast to pointer from integer of different size keys.c: In function 'set_keysym': keys.c:257: warning: cast to pointer from integer of different size keys.c: In function 'set_keycode': keys.c:272: warning: cast to pointer from integer of different size keys.c: In function 'set_button': keys.c:288: warning: cast to pointer from integer of different size x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I. -march=nocona -pipe -O2 -DFORK_FLAG=1 -DGUILE_FLAG=1 -I. -Wall -march=nocona -pipe -O2 -c grab_key.c options.c: In function 'init_xbk_guile_fns': options.c:714: warning: implicit declaration of function 'scm_make_gsubr' options.c: In function 'get_rc_guile_file': options.c:743: warning: implicit declaration of function 'scm_take0str' options.c:743: warning: passing argument 1 of 'scm_primitive_load' makes pointer from integer without a cast options.c: In function 'set_numlock_wrapper': options.c:756: warning: implicit declaration of function 'SCM_FALSEP' options.c: In function 'xbindkey_wrapper': options.c:772: warning: implicit declaration of function 'rpl_malloc' options.c:772: warning: implicit declaration of function 'SCM_LENGTH' options.c:772: warning: assignment makes pointer from integer without a cast options.c:773: warning: implicit declaration of function 'SCM_CHARS' options.c:773: warning: passing argument 2 of '__builtin_strncpy' makes pointer from integer without a cast options.c:778: warning: implicit declaration of function 'SCM_CONSP' options.c:788: warning: assignment makes pointer from integer without a cast options.c:789: warning: passing argument 2 of '__builtin_strncpy' makes pointer from integer without a cast options.c:832: warning: assignment makes pointer from integer without a cast options.c:833: warning: passing argument 2 of '__builtin_strncpy' makes pointer from integer without a cast x86_64-pc-linux-gnu-gcc -march=nocona -pipe -O2 -DFORK_FLAG=1 -DGUILE_FLAG=1 -I. -Wall -march=nocona -pipe -O2 -o xbindkeys xbindkeys.o keys.o options.o get_key.o grab_key.o -L/usr/lib64 -lX11 -lguile xbindkeys.o: In function `adjust_display': xbindkeys.c:(.text+0x112): undefined reference to `rpl_malloc' keys.o: In function `set_button': keys.c:(.text+0x132): undefined reference to `rpl_malloc' keys.o: In function `set_keycode': keys.c:(.text+0x187): undefined reference to `rpl_malloc' keys.o: In function `set_keysym': keys.c:(.text+0x1dd): undefined reference to `rpl_malloc' keys.o: In function `add_key': keys.c:(.text+0x5c9): undefined reference to `rpl_malloc' options.o: In function `set_capslock_wrapper': options.c:(.text+0x6a): undefined reference to `SCM_FALSEP' options.o: In function `set_scrolllock_wrapper': options.c:(.text+0x99): undefined reference to `SCM_FALSEP' options.o: In function `set_numlock_wrapper': options.c:(.text+0xc8): undefined reference to `SCM_FALSEP' options.o: In function `init_xbk_guile_fns': options.c:(.text+0x145): undefined reference to `scm_make_gsubr' options.c:(.text+0x160): undefined reference to `scm_make_gsubr' options.c:(.text+0x17b): undefined reference to `scm_make_gsubr' options.c:(.text+0x196): undefined reference to `scm_make_gsubr' options.o: In function `get_rc_guile_file': options.c:(.text+0x1ed): undefined reference to `scm_take0str' options.o: In function `xbindkey_wrapper': options.c:(.text+0x1803): undefined reference to `SCM_LENGTH' options.c:(.text+0x1810): undefined reference to `rpl_malloc' options.c:(.text+0x181d): undefined reference to `SCM_LENGTH' options.c:(.text+0x1829): undefined reference to `SCM_CHARS' options.c:(.text+0x1841): undefined reference to `SCM_LENGTH' options.c:(.text+0x1894): undefined reference to `SCM_CONSP' options.c:(.text+0x18ab): undefined reference to `SCM_CONSP' options.c:(.text+0x18be): undefined reference to `SCM_LENGTH' options.c:(.text+0x18cd): undefined reference to `rpl_malloc' options.c:(.text+0x18de): undefined reference to `SCM_CHARS' options.c:(.text+0x195f): undefined reference to `SCM_LENGTH' options.c:(.text+0x196e): undefined reference to `rpl_malloc' options.c:(.text+0x197e): undefined reference to `SCM_CHARS' /usr/lib64/libguile.so: undefined reference to `pthread_create' /usr/lib64/libguile.so: undefined reference to `pthread_getspecific' /usr/lib64/libguile.so: undefined reference to `pthread_attr_getstack' /usr/lib64/libguile.so: undefined reference to `pthread_detach' /usr/lib64/libguile.so: undefined reference to `pthread_once' /usr/lib64/libguile.so: undefined reference to `pthread_key_create' /usr/lib64/libguile.so: undefined reference to `pthread_getattr_np' /usr/lib64/libguile.so: undefined reference to `pthread_sigmask' /usr/lib64/libguile.so: undefined reference to `pthread_mutexattr_settype' /usr/lib64/libguile.so: undefined reference to `pthread_mutexattr_init' /usr/lib64/libguile.so: undefined reference to `pthread_setspecific' collect2: ld returned 1 exit status make: *** [xbindkeys] Error 1 !!! ERROR: x11-misc/xbindkeys-1.7.3 failed. Call stack: ebuild.sh, line 1611: Called dyn_compile ebuild.sh, line 968: Called qa_call 'src_compile' environment, line 1280: Called src_compile xbindkeys-1.7.3.ebuild, line 28: Called die
(In reply to comment #2) > /usr/lib64/libguile.so: undefined reference to `pthread_create' > /usr/lib64/libguile.so: undefined reference to `pthread_getspecific' > /usr/lib64/libguile.so: undefined reference to `pthread_attr_getstack' > /usr/lib64/libguile.so: undefined reference to `pthread_detach' > /usr/lib64/libguile.so: undefined reference to `pthread_once' > /usr/lib64/libguile.so: undefined reference to `pthread_key_create' > /usr/lib64/libguile.so: undefined reference to `pthread_getattr_np' > /usr/lib64/libguile.so: undefined reference to `pthread_sigmask' > /usr/lib64/libguile.so: undefined reference to `pthread_mutexattr_settype' > /usr/lib64/libguile.so: undefined reference to `pthread_mutexattr_init' > /usr/lib64/libguile.so: undefined reference to `pthread_setspecific' Broken library?
(In reply to comment #3) > > Broken library? > revdep-rebuild says: broken /usr/bin/xbindkeys (requires libguile.so.12) Tried to make a symlink from /usr/lib64/libguile.so to /usr/lib64/libguile.so.12 but that didn't help. Is there another way to find out if a library is broken?
Using "ldd -r" shows that libguile.so is not linked to libpthread, hence the missing symbols and the troubles when linking something against this lib. This seems to be because of some broken Makefiles shipped with guile-1.8.1. Refreshing them (eautoreconf) at src_unpack time fixes the issue. - with default makefiles: % ldd -r libguile/.libs/libguile.so.17.0.1 undefined symbol: pthread_create (libguile/.libs/libguile.so.17.0.1) undefined symbol: pthread_getspecific (libguile/.libs/libguile.so.17.0.1) undefined symbol: pthread_attr_getstack (libguile/.libs/libguile.so.17.0.1) undefined symbol: pthread_detach (libguile/.libs/libguile.so.17.0.1) undefined symbol: pthread_once (libguile/.libs/libguile.so.17.0.1) undefined symbol: pthread_key_create (libguile/.libs/libguile.so.17.0.1) undefined symbol: pthread_getattr_np (libguile/.libs/libguile.so.17.0.1) undefined symbol: pthread_sigmask (libguile/.libs/libguile.so.17.0.1) undefined symbol: pthread_mutexattr_settype (libguile/.libs/libguile.so.17.0.1) undefined symbol: pthread_mutexattr_init (libguile/.libs/libguile.so.17.0.1) undefined symbol: pthread_setspecific (libguile/.libs/libguile.so.17.0.1) linux-gate.so.1 => (0xb7fda000) libgmp.so.3 => /usr/lib/libgmp.so.3 (0xb7eb6000) libcrypt.so.1 => /lib/libcrypt.so.1 (0xb7e88000) libm.so.6 => /lib/libm.so.6 (0xb7e60000) libltdl.so.3 => /usr/lib/libltdl.so.3 (0xb7e59000) libc.so.6 => /lib/libc.so.6 (0xb7d0e000) /lib/ld-linux.so.2 (0x80000000) libdl.so.2 => /lib/libdl.so.2 (0xb7d0a000) - with refreshed makefiles: % ldd -r libguile/.libs/libguile.so.17.0.1 linux-gate.so.1 => (0xb7f2b000) libgmp.so.3 => /usr/lib/libgmp.so.3 (0xb7e07000) libcrypt.so.1 => /lib/libcrypt.so.1 (0xb7dd9000) libm.so.6 => /lib/libm.so.6 (0xb7db1000) libltdl.so.3 => /usr/lib/libltdl.so.3 (0xb7daa000) libpthread.so.0 => /lib/libpthread.so.0 (0xb7d92000) libc.so.6 => /lib/libc.so.6 (0xb7c48000) /lib/ld-linux.so.2 (0x80000000) libdl.so.2 => /lib/libdl.so.2 (0xb7c44000) Running eautoreconf requires fixing a few autotools files though. I will attach a patch for that purpose (all fixes come from upstream CVS). As for the other missing symbols you're seeing when compiling xbindkeys, i've hit them too, and then recompiled guile adding the "regexp" and "deprecated" USE flags, and it worked. I'm not sure which one of this two flags was really required though (or was it both?). I'll do an other test later to be sure. ---------------------- Portage 2.1.2-r7 (default-linux/x86/2006.1/desktop, gcc-4.1.1, glibc-2.5-r0, 2.6.19-beyond2 i686) ================================================================= System uname: 2.6.19-beyond2 i686 Intel(R) Pentium(R) M processor 1500MHz Gentoo Base System version 1.12.9 Timestamp of tree: Sat, 03 Feb 2007 23:50:01 +0000 ccache version 2.4 [disabled] dev-java/java-config: 1.3.7, 2.0.31-r3 dev-lang/python: 2.4.4 dev-python/pycrypto: 2.0.1-r5 dev-util/ccache: 2.4-r6 sys-apps/sandbox: 1.2.18.1 sys-devel/autoconf: 2.13, 2.61 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.14 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.19.2-r2 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-march=pentium-m -O2 -pipe -ggdb" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config /usr/share/cursors/xorg-x11/default /var/qmail/alias /var/qmail/control" CONFIG_PROTECT_MASK="/etc/X11/Sessions /etc/X11/app-defaults /etc/dev.d /etc/env.d /etc/env.d/java/ /etc/gconf /etc/hotplug /etc/hotplug.d /etc/init.d /etc/java-config/vms/ /etc/revdep-rebuild /etc/sgml /etc/sound /etc/splash /etc/terminfo /etc/texmf/web2c" CXXFLAGS="-march=pentium-m -O2 -pipe -ggdb" DISTDIR="/var/portage/distfiles" EMERGE_DEFAULT_OPTS="--alphabetical" FEATURES="autoconfig distlocks fixpackages parallel-fetch sandbox sfperms splitdebug userpriv usersandbox" GENTOO_MIRRORS=" ftp://ftp.proxad.net/mirrors/ftp.gentoo.org/ http://pandemonium.tiscali.de/pub/gentoo/ http://distro.ibiblio.org/pub/linux/distributions/gentoo ftp://ftp.ussg.iu.edu/linux/gentoo" LANG="en_US" LC_ALL="en_US" LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--sort-common" LINGUAS="fr fr_FR en en_US" MAKEOPTS="-j2" PKGDIR="/var/portage/packages" PORTAGE_RSYNC_EXTRA_OPTS="--exclude-from=/etc/portage/rsync_excludes" 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" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/var/portage/tree" PORTDIR_OVERLAY="/var/portage/overlays/crossdev /var/portage/overlays/bugzilla /var/portage/overlays/tgl /var/portage/overlays/demexp /var/portage/overlays/camelis /var/portage/layman/sunrise" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="X Xaw3d a52 aac aalib acpi adns alsa apache2 audiofile avahi bash-completion berkdb bitmap-fonts bonobo browserplugin bzip2 cairo cdparanoia cdr cli cracklib cross crypt cscope cups curl dba dbus dga dlloader dpms dri dvd dvdr dvdread emboss encode exif expat faad fam fame fastcgi fbcon ffmpeg firefox flac foomaticdb freetype gcj gd gdbm ggz gif gimp gnome gnomedb gnutls gpm gstreamer gtk gtk2 gtkhtml guile hal iconv idea imagemagick imap imlib imlib2 ipv6 isdnlog java jpeg junit ladspa lcms leim libcaca libg++ libnotify lirc logrotate lzo mad mailwrapper matroska mbox memlimit midi mikmod mjpeg mmx mng modplug mono mozilla mp3 mpeg musepack musicbrainz ncurses network nls nodrm nptl nptlonly nsplugin offensive ogg oggvorbis openal opengl oss pam pcre pdf plotutils png pnp postgres ppds pppd python quicktime readline real reflection ruby scanner sdl session slang slp smime smooth sndfile sox speex spell spl sqlite sqlite3 sse sse2 ssl startup-notification svg sysfs syslog tcltk tcpd tetex theora threads tiff timidity tmpfs truetype truetype-fonts type1-fonts udev unicode usb v4l v4l2 vhosts vim-syntax vorbis webdav wifi win32codecs wmf wxwindows x264 x86 xface xinerama xml xml2 xorg xosd xpm xscreensaver xsl xv xvid zeo zlib" ALSA_CARDS="intel8x0 intel8x0m" 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="evdev keyboard mouse synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="fr fr_FR en en_US" LIRC_DEVICES="sir" USERLAND="GNU" VIDEO_CARDS="dummy radeon" Unset: CTARGET, INSTALL_MASK (Note that i'm using "--as-needed", but no, that's not what was breaking pthread linking. I've made tests without this flag to be sure.)
Created attachment 109135 [details, diff] files/guile-1.8.1-autotools_fixes.patch Fix various autotools errors.
Created attachment 109137 [details, diff] guile-1.8.1-r1-ebuild--autotools_fixes.patch Make the ebuild run eautoreconf.
*** Bug 168104 has been marked as a duplicate of this bug. ***
I verified that putting the 2 patches in a local overlay, with : echo "dev-scheme/guile regex deprecated" >> /etc/portage/package.use and re-emerging the failing guile + xbinkeys work. Now the question is, why aren't those fixes already in portage ? They are almost 20 days old... (This has been tested on ~amd64)
I can also verify that patching the guile-1.8.1-r1 ebuild with the attached patches solves the issue with xbindkeys. xbindkeys compiles successfully.
(In reply to comment #5) > As for the other missing symbols you're seeing when compiling xbindkeys, i've > hit them too, and then recompiled guile adding the "regexp" and "deprecated" > USE flags, and it worked. I'm not sure which one of this two flags was really > required though (or was it both?). I'll do an other test later to be sure. Sorry, forgot to report back on this question i had left open. Answer is that only "deprecated" is actually required. I will attach a patch for xbindkey's ebuild to check that in pkg_setup().
Created attachment 111189 [details, diff] xbindkeys-1.8.0-ebuild--check_guile18_USE_flags.patch
guile-1.8.1-r3 contains the patches needed by xbindkeys. Thanks TGL. Reassigning to desktop-misc herd.
xbindkeys-1.8.0 still doesn't compile for me even with guile 1.8.1-r3 installed: x86_64-pc-linux-gnu-gcc -march=k8 -mtune=k8 -O2 -fweb -pipe -DFORK_FLAG=1 -DGUILE_FLAG=1 -I. -Wall -march=k8 -mtune=k8 -O2 -fweb -pipe -o xbindkeys xbindk eys.o keys.o options.o get_key.o grab_key.o -L/usr/lib64 -lX11 -lguile options.o: In function `run_command_wrapper': options.c:(.text+0x109): undefined reference to `SCM_LENGTH' options.c:(.text+0x121): undefined reference to `SCM_LENGTH' options.c:(.text+0x12e): undefined reference to `SCM_CHARS' options.c:(.text+0x146): undefined reference to `SCM_LENGTH'
(In reply to comment #14) > xbindkeys-1.8.0 still doesn't compile for me even with guile 1.8.1-r3 > installed: Installed with what USE flags? Please copy/paste output of "emerge -pv guile", thanks.
[ebuild R ] dev-scheme/guile-1.8.1-r3 USE="nls threads -debug -debug-freelist -debug-malloc -deprecated -discouraged -elisp -networking -regex" 0 kB distcc, ccache and other stuff disabled. Amd64. Thanks
(In reply to comment #16) > [ebuild R ] dev-scheme/guile-1.8.1-r3 USE="nls threads -debug > -debug-freelist -debug-malloc -deprecated -discouraged -elisp -networking > -regex" 0 kB > You should recompile guile with the "deprecated" USE flag turned on.
Thanks, it worked
just curious - if this is only a problem with missing link to pthread lib, couldn't it be added to LIBS for xbindkeys? as I see, this should be enough. or am I missing something? second option would be to add check in xbindkeys ebuild, was guile build with deprecated use flag. but I'm thinking linking to pthread lib should be enough... Cheers, Przemek
(In reply to comment #19) > just curious - if this is only a problem with missing link to pthread lib, > couldn't it be added to LIBS for xbindkeys? as I see, this should be enough. Why would you want to workaround that in xbindkeys (and in other apps which uses guile) rather than fixing it in Guile? I mean, it's Guile which uses pthread, and thus it is the one which should care about linking libpthread. Anyway, guile is already fixed (thanks Marijn), so the pthread symbols issue is no more. > second option would be to add check in xbindkeys ebuild, was guile build with > deprecated use flag. It's not a second option, it's fixing a second issue. See in comment #2, which contains two kinds of missing symbols (the pthread_* ones, and the SCM_* ones). That's what third attachment is for.
(In reply to comment #20) > (In reply to comment #19) > > just curious - if this is only a problem with missing link to pthread lib, > > couldn't it be added to LIBS for xbindkeys? as I see, this should be enough. > > Why would you want to workaround that in xbindkeys (and in other apps which > uses guile) rather than fixing it in Guile? I mean, it's Guile which uses > pthread, and thus it is the one which should care about linking libpthread. haha. my bad - probably it was just to late for me ;) > Anyway, guile is already fixed (thanks Marijn), so the pthread symbols issue is > no more. > > > second option would be to add check in xbindkeys ebuild, was guile build with > > deprecated use flag. > > It's not a second option, it's fixing a second issue. See in comment #2, which > contains two kinds of missing symbols (the pthread_* ones, and the SCM_* ones). > That's what third attachment is for. yes - it's the same, what I was thinking of. ok. I'm gonna add patch for xbindkeys ebuilds. Cheers, Przemek
Fixed in CVS. Thx. Cheers, Przemek