Created attachment 308693 [details] build.log Recently, gentoo has upgraded libffi and /usr/lib64/libffi.so.5 was replaced with /usr/lib64/libffi.6 I hаve no idea how this "setup" thing ends up being dynamically linked against the old version. I have re-emerged all the ebuilds that relied on the older version of libffi. I also unmerged everything haskell-related and now I fail to emerge it back. ghc has compiled w/o problems. The output is: * Using cabal-1.14.0. /usr/bin/ghc -package Cabal-1.14.0 --make /var/tmp/portage/app-admin/haskell-updater-1.2.0.5-r1/work/haskell-updater-1.2.0.5/Setup.lhs -dynamic -o setup [1 of 1] Compiling Main ( /var/tmp/portage/app-admin/haskell-updater-1.2.0.5-r1/work/haskell-updater-1.2.0.5/Setup.lhs, /var/tmp/portage/app-admin/haskell-updater-1.2.0.5-r1/work/haskell-updater-1.2.0.5/Setup.o ) Linking setup ... ./setup configure --ghc --prefix=/usr --with-compiler=/usr/bin/ghc --with-hc-pkg=/usr/bin/ghc-pkg --prefix=/usr --libdir=/usr/lib64 --libsubdir=haskell-updater-1.2.0.5/ghc-7.4.1 --datadir=/usr/share/ --datasubdir=haskell-updater-1.2.0.5/ghc-7.4.1 --ghc-option=-optl-Wl,-O1 --ghc-option=-optl-Wl,--as-needed --disable-executable-stripping --docdir=/usr/share/doc/haskell-updater-1.2.0.5-r1 --verbose --bindir=/usr/sbin --constraint=Cabal == 1.14.0 ./setup: error while loading shared libraries: libffi.so.5: cannot open shared object file: No such file or directory
Created attachment 308695 [details] emerge --info
ghc uses bundled libffi, so it likely causes the trouble. Do you have normal or forced-as-needed gcc?
ghc rebuilt failed for me fith similar errors. Portage 2.1.10.56 (default/linux/amd64/10.0/desktop/gnome, gcc-4.6.2, glibc-2.14.1-r2, 3.3.1-gentoo x86_64) ================================================================= System Settings ================================================================= System uname: Linux-3.3.1-gentoo-x86_64-Intel-R-_Core-TM-_i7-2630QM_CPU_@_2.00GHz-with-gentoo-2.1 Timestamp of tree: Fri, 13 Apr 2012 04:45:01 +0000 app-shells/bash: 4.2_p24 dev-java/java-config: 2.1.11-r3 dev-lang/python: 2.6.7-r2, 2.7.3, 3.1.4-r4, 3.2.2-r1 dev-util/cmake: 2.8.7-r5 dev-util/pkgconfig: 0.26 sys-apps/baselayout: 2.1 sys-apps/openrc: 0.9.9.3 sys-apps/sandbox: 2.5 sys-devel/autoconf: 2.13, 2.68 sys-devel/automake: 1.9.6-r3, 1.10.3, 1.11.4 sys-devel/binutils: 2.22-r1 sys-devel/gcc: 4.4.7, 4.5.3-r2, 4.6.2 sys-devel/gcc-config: 1.6 sys-devel/libtool: 2.4.2 sys-devel/make: 3.82-r3 sys-kernel/linux-headers: 3.3 (virtual/os-headers) sys-libs/glibc: 2.14.1-r2 Repositories: gentoo x11 science gamerlay-stable bumblebee local ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="* -@EULA" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=native -mtune=native -O3 -pipe -ggdb" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt /var/lib/hsqldb" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c" CXXFLAGS="-march=native -mtune=native -O3 -pipe -ggdb" DISTDIR="/usr/portage/distfiles" EMERGE_DEFAULT_OPTS="" FEATURES="assume-digests binpkg-logs compress-build-logs distlocks ebuild-locks fixlafiles news parallel-fetch parallel-install protect-owned sandbox sfperms splitdebug strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync" FFLAGS="-march=native -mtune=native -O3 -pipe -ggdb" GENTOO_MIRRORS="ftp://trumpetti.atm.tut.fi/gentoo/ http://trumpetti.atm.tut.fi/gentoo/ http://gentoo.tups.lv/source/ " LANG="lv_LV.UTF-8" LC_ALL="lv_LV.UTF-8" LDFLAGS="-Wl,-O1 -Wl,--as-needed" LINGUAS="lv en" MAKEOPTS="-j9" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/var/lib/layman/x11 /var/lib/layman/science /var/lib/layman/gamerlay /var/lib/layman/bumblebee /usr/local/portage" SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage" USE="X a52 aac acl acpi alsa amd64 avx bash-completion berkdb bluetooth branding bzip2 cairo cdda cdio cdr cjk cleartype cli colord consolekit cracklib crypt cups cxx dbus dirac djvu dri dts dvd dvdr eds emboss encode evo exif fam ffmpeg fftw firefox flac fontconfig fortran gdbm gdu gif gnome gnome-keyring gnome-online-accounts gphoto2 gpm gsm gstreamer gtk gtk3 iconv idn ipv6 jpeg kate lcms ldap libcaca libnotify live mad matroska mmx mng modules mp3 mp4 mpeg mtp mudflap multilib musepack nautilus ncurses networkmanager nls nptl nptlonly ogg openexr opengl openmp pam pango pcre pdf png policykit ppds pppd pulseaudio qt3support qt4 raw readline schroedinger sdl session smp socialweb speex spell sse sse2 sse4_1 ssl ssse3 startup-notification svg sysfs system-sqlite tcpd theora tiff truetype udev unicode usb v4l v4l2 vaapi vorbis vpx wmf x264 xcb xetex xml xmp xorg xpm xulrunner xv xvid xvmc zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" FOO2ZJS_DEVICES="hp1018" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="evdev synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="lv en" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="dummy fbdev nvidia i965 intel vesa" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CPPFLAGS, CTARGET, INSTALL_MASK, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON ================================================================= Package Settings ================================================================= dev-lang/ghc-7.4.1 was built with the following: USE="ghcbootstrap (multilib) -binary -doc -llvm" CFLAGS="-march=native -mtune=native -pipe -ggdb -O2 -march=native -march=native -mtune=native -mtune=native -Wa,--noexecstack -Wa,--noexecstack" CXXFLAGS="-march=native -mtune=native -pipe -ggdb -O2"
(In reply to comment #2) > ghc uses bundled libffi, so it likely causes the trouble. > Do you have normal or forced-as-needed gcc? I'm not sure, how do I check? (So, probably the default :) The USE flags for the gcc are the following: cxx fortran gtk mudflap multilib nls nptl openmp -altivec -bootstrap -build -doc -fixed-point -gcj -graphite -hardened -libssp -lto -multislot -nocxx -nopie -nossp -objc -objc++ -objc-gc -test -vanilla
(In reply to comment #3) > ghc rebuilt failed for me fith similar errors. No, ghc recompiled without problems here.
Created attachment 308737 [details] compressed ghc build log
(In reply to comment #6) > Created attachment 308737 [details] > compressed ghc build log It's something completely different, ghc segfaults on you. You should probably open a separate bug.
(In reply to comment #7) > It's something completely different, ghc segfaults on you. You should > probably open a separate bug. Ah, don't know why I thought it was similar issue, probably because it occurred during revdep-rebuild after libffi update. Moving to bug #409873.
I have also libffi update issues with these packages: app-admin/haskell-updater-1.2.0.5-r1 dev-haskell/syb-0.3.6 dev-haskell/transformers-0.2.2.0 dev-haskell/zlib-0.5.3.2 dev-haskell/mtl-2.0.1.0 dev-haskell/time-1.4.0.1 dev-haskell/text-0.11.1.13-r1 dev-haskell/parsec-3.1.2-r1 dev-haskell/random-1.0.1.1 dev-haskell/network-2.3.0.11 dev-haskell/http-4000.2.3
(In reply to comment #2) > ghc uses bundled libffi, so it likely causes the trouble. What, why? Please file a separate bug report about this against the Tracker bug 251464.
(In reply to comment #10) > (In reply to comment #2) > > ghc uses bundled libffi, so it likely causes the trouble. > > What, why? Please file a separate bug report about this against the Tracker > bug 251464. filed as bug #411925
Turned out to be a GHC misfeature. It did not embed proper RPATH to it's bundled libraries for experimental -dynamic mode. As we are using -dynamic to build only Cabal configure program I've backtracked to static linkage: > 14 Apr 2012; Sergei Trofimovich <slyfox@gentoo.org> haskell-cabal.eclass: > fix -dynamic './setup configure' failures against newer libffi (bug #411789 > by Leonid Podolny) It should fix most of failures (haven't tested template-haskell ones yet). Thanks for the report!