Summary: | perl-5.8.7-r2 - DynaLoader.a linking issues break packages on amd64 | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Sandro Bonazzola (RETIRED) <sanchan> |
Component: | [OLD] Development | Assignee: | Gentoo Perl team <perl> |
Status: | VERIFIED FIXED | ||
Severity: | major | CC: | amd64, chainsaw, dams, danarmak, jakub, jdaluz, jean.brefort, mholzer, mog.johnny, nt, rileypatterson, slarti, swdrumm, triumpht595, vidyacakra, will.briggs |
Priority: | Highest | ||
Version: | unspecified | ||
Hardware: | AMD64 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- |
Description
Sandro Bonazzola (RETIRED)
![]() *** Bug 114392 has been marked as a duplicate of this bug. *** *** Bug 114402 has been marked as a duplicate of this bug. *** Hmmm, there's something wrong w/ last perl update, breaks many ebuilds. :/ *** Bug 114425 has been marked as a duplicate of this bug. *** Just to confirm that this occurs with non-ricer CFLAGS too: Portage 2.0.53 (default-linux/amd64/2005.1, gcc-3.4.4, glibc-2.3.5-r3, 2.6.15-rc4-git2-ck1 x86_64) ================================================================= System uname: 2.6.15-rc4-git2-ck1 x86_64 AMD Athlon(tm) 64 Processor 3000+ Gentoo Base System version 1.12.0_pre11 dev-lang/python: 2.3.5, 2.4.2 sys-apps/sandbox: 1.2.16 sys-devel/autoconf: 2.13, 2.59-r7 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1 sys-devel/binutils: 2.16.1-r1 sys-devel/libtool: 1.5.20-r1 virtual/os-headers: 2.6.11-r3 ACCEPT_KEYWORDS="amd64 ~amd64" AUTOCLEAN="yes" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-O2 -march=k8 -pipe -fomit-frame-pointer" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/lib/X11/xkb /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-O2 -march=k8 -pipe -fomit-frame-pointer" DISTDIR="/store/distfiles" FEATURES="autoaddcvs autoconfig cvs distlocks sandbox sfperms sign" GENTOO_MIRRORS="ftp://ftp.heanet.ie/pub/gentoo/" LC_ALL="en_IE.utf8" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/cvs/gentoo-x86" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="amd64 16bit S3TC X a52 aac aalib acpi adns aim alsa ao aotuv apache2 audacious audiofile avi bash-completion berkdb bitmap-fonts browserplugin bzip2 cairo cddb cdio cdparanoia cdr crypt cups curl dbus dpms dts dvd dvdr ecc eds elf emboss encode erandom ethereal evo exif expat fam fat fbcon fbsplash ffmpeg fftw firefox flac fmod foomaticdb fpx freetype ftp gcj gd gdbm gif glitz glut gnome gnome-print gnomecanvas gnutls gpm gstreamer gtk gtk2 gtkhtml gzip hal howl icq id3 idn ieee1394 imagemagick imap imlib imlib2 inifile ipv6 irc java jce john jp2 jpeg jpeg2k kerberos lame lcms ldap libcaca libsamplerate libwww lirc lm_sensors logrotate lzo lzw lzw-tiff mad matroska md5sum mhash mikmod mjpeg mmap mng mod mozsvg mp3 mpeg mpeg2 mpeg4 mplayer musepack musicbrainz ncurses network nls no-old-linux nptl nsplugin ntlm nvidia ogg oggvorbis openal opengl openssl oscar pam pccts pcre pdflib perl physfs png pnp python quicktime rar rdesktop readline real recode ruby sdl sensord silc sndfile speex spell ssl stencil-buffer svg svgz symlink sysfs tcltk theora tiff timidity transcode truetype truetype-fonts type1-fonts udev unicode ups usb v4l2 vcd vorbis wifi wmf xanim xine xinerama xml2 xpm xprint xsl xslt xv xvid xvmc yahoo yv12 zeroconf zip zlib zvbi userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LANG, LDFLAGS, LINGUAS *** Bug 114452 has been marked as a duplicate of this bug. *** I encountered the same problems after upgrading perl to 5.8.7. I found the following solution on my amd64 machine: Add -fPIC to your CFLAGS , then emerge perl. As far as I understood it and a quick glance at the ebuild also told me, this should be normally set by the ebuild itself. For whatever reason it seems not to work as expected though. After that you can compile other modules that want to link against Dynaloader. Unfortunately, this isn't an acceptable solution. Not everything should be compiled with -fPIC in all situations, so it cannot be forced in the ebuild. The Makefile needs to be patched. It seems that the ${PN}-picdl.patch has been commented out from the perl-5.8.7-r2 ebuild, any reason for this? Uncommenting this patch again resolves this problem here. *** Bug 114469 has been marked as a duplicate of this bug. *** There is no mention about why the patch is removed in the Changelog. This was entered when the patch was first applied *perl-5.8.2-r1 (29 Nov 2003) 29 Nov 2003; <rac@gentoo.org> perl-5.8.2-r1.ebuild, files/perl-5.8.2-picdl.patch: Make CCCDLFLAGS apply to static archives like DynaLoader.a as well, even though we are not building a shared libperl here, because we do have a shared library elsewhere. Should make it so that arches like amd64 and hppa no longer have to add -fPIC to all cflags blindly. The picdl patch was commented out locally while trying to troubleshoot issues that it causes (segfaulting on really large regex's). Sorry for the typo in the committed version, resync and you will be happy again. *** Bug 114288 has been marked as a duplicate of this bug. *** *** Bug 114538 has been marked as a duplicate of this bug. *** I think we need a revbump stabilising in order to propagate this fix to systems that have already upgraded. (In reply to comment #15) > I think we need a revbump stabilising in order to propagate this fix to systems > that have already upgraded. Yes. Yes, you do. Re-opening to ask that there be a rev bump. This fix requires a rebuild of perl on affected systems. *** Bug 114591 has been marked as a duplicate of this bug. *** I'll bump it - but only systems that couldn't emerge in the first place are affected. Boxes that didn't have problems will be bumping yet again. They could emerge perl, but stuff using DynaLoader.a couldn't emerge. So IMHO it definitely needs a revision bump. My system currently fails on some packages until I emerge perl again. if you can hold on a few hours, perl's about to get bumped again anyway because of an incomplete security fix The bump has fixed the issue and I have marked it stable on amd64. Verified, works fine for me. |