Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 411789 - app-admin/haskell-updater is broken due to libffi update
Summary: app-admin/haskell-updater is broken due to libffi update
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Unspecified (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo's Haskell Language team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-04-12 19:44 UTC by Leonid Podolny
Modified: 2012-04-14 19:36 UTC (History)
4 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log,3.08 KB, text/plain)
2012-04-12 19:44 UTC, Leonid Podolny
Details
emerge --info (emerge.info,4.57 KB, text/plain)
2012-04-12 19:45 UTC, Leonid Podolny
Details
compressed ghc build log (ghc-build.log.gz,589.84 KB, application/x-gzip)
2012-04-13 06:29 UTC, Reinis Danne
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Leonid Podolny 2012-04-12 19:44:35 UTC
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
Comment 1 Leonid Podolny 2012-04-12 19:45:28 UTC
Created attachment 308695 [details]
emerge --info
Comment 2 Sergei Trofimovich (RETIRED) gentoo-dev 2012-04-12 21:21:41 UTC
ghc uses bundled libffi, so it likely causes the trouble.
Do you have normal or forced-as-needed gcc?
Comment 3 Reinis Danne 2012-04-13 05:24:05 UTC
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"
Comment 4 Leonid Podolny 2012-04-13 05:27:22 UTC
(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
Comment 5 Leonid Podolny 2012-04-13 05:27:59 UTC
(In reply to comment #3)
> ghc rebuilt failed for me fith similar errors.

No, ghc recompiled without problems here.
Comment 6 Reinis Danne 2012-04-13 06:29:17 UTC
Created attachment 308737 [details]
compressed ghc build log
Comment 7 Leonid Podolny 2012-04-13 06:59:26 UTC
(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.
Comment 8 Reinis Danne 2012-04-13 10:05:17 UTC
(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.
Comment 9 Reinis Danne 2012-04-13 16:47:58 UTC
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
Comment 10 Samuli Suominen (RETIRED) gentoo-dev 2012-04-14 07:38:32 UTC
(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.
Comment 11 Sergei Trofimovich (RETIRED) gentoo-dev 2012-04-14 09:13:26 UTC
(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
Comment 12 Sergei Trofimovich (RETIRED) gentoo-dev 2012-04-14 19:36:35 UTC
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!