Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 264155 - dev-perl/Encode-Detect-1.01 needs append-ldflags '-lstdc++' in src_compile()
Summary: dev-perl/Encode-Detect-1.01 needs append-ldflags '-lstdc++' in src_compile()
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: High normal (vote)
Assignee: Gentoo Perl team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 233354
  Show dependency tree
 
Reported: 2009-03-29 08:39 UTC by Joshua Rich
Modified: 2009-03-29 20:50 UTC (History)
1 user (show)

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


Attachments
patch to Encode-Detect-1.01.ebuild (Encode-Detect-1.01.ebuild.patch,718 bytes, patch)
2009-03-29 08:41 UTC, Joshua Rich
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Joshua Rich 2009-03-29 08:39:09 UTC
dev-perl/Encode-Detect has undefined symbol issues if LDFLAGS is set.  It
appears that somewhere during the build process, any linker flags specified in
the 'extra-linker-flags' variable of a Perl module's Build.PL file (for a module
using Module::Build).  It may be more or less specific than that.  At least in
this case, Encode-Detect specifies '-lstdc++', which gets dropped
when building through an ebuild, but not when building from source [1].

A fix is available through the patch attached to this bug report, using the
flag-o-matic eclass and append-ldflags to 're-add' the dropped linker flag.

Problem was encountered on an ~amd64 system trying with
media-sound/squeezecenter.  Output of 'emerge --info' attached below. Applying
the above patch and rebuilding dev-perl/Encode-Detect allows
media-sound/squeezecenter to work.  May help for other applications that
depend on and link to this Perl module.

As I'm using unstable ~amd64, it would be nice to verify this is a problem for stable archs.  I expect it is.

Hope this is of help.  Please let me know if I can provide more information.

Thanks and regards,

Joshua Rich


1  - http://forums.slimdevices.com/showthread.php?t=61056


Reproducible: Always

Steps to Reproduce:
1. emerge dev-perl/Encode-Detect-1.01
2. Use an application which links to this Perl module (i.e. media-sound/squeezecenter).




Portage 2.2_rc27 (default/linux/amd64/2008.0/no-multilib, gcc-4.3.3, glibc-2.9_p20081201-r2, 2.6.29-gentoo x86_64)
=================================================================
System uname: Linux-2.6.29-gentoo-x86_64-Intel-R-_Core-TM-2_Duo_CPU_E7500_@_2.93GHz-with-glibc2.2.5
Timestamp of tree: Fri, 27 Mar 2009 11:30:16 +0000
ccache version 2.4 [enabled]
app-shells/bash:     3.2_p48-r1
dev-java/java-config: 2.1.7
dev-lang/python:     2.5.4-r2
dev-util/ccache:     2.4-r8
dev-util/cmake:      2.6.3
sys-apps/baselayout: 2.0.0-r2
sys-apps/openrc:     0.4.2-r1
sys-apps/sandbox:    1.6
sys-devel/autoconf:  2.13, 2.63
sys-devel/automake:  1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.2
sys-devel/binutils:  2.19.1-r1
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.6a
virtual/os-headers:  2.6.28-r1
ACCEPT_KEYWORDS="amd64 ~amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=core2 -O2 -pipe -mssse3 -msse4.1"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /etc/env.d /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-march=core2 -O2 -pipe -mssse3 -msse4.1"
DISTDIR="/usr/portage/distfiles"
FEATURES="ccache distlocks fixpackages noinfo parallel-fetch preserve-libs protect-owned sandbox sfperms strict unmerge-orphans userfetch userpriv usersandbox"
FFLAGS="-march=core2 -O2 -pipe -mssse3 -msse4.1"
GENTOO_MIRRORS=" http://linux.anu.edu.au/gentoo http://mirror.internode.on.net/pub/gentoo http://mirror.aarnet.edu.au/pub/gentoo http://ftp.swin.edu.au/gentoo"
LANG="en_AU.utf8"
LC_ALL="en_AU.utf8"
LDFLAGS="-Wl,-O1 -Wl,--hash-style=gnu -Wl,--sort-common -Wl,--as-needed"
LINGUAS="en"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_EXTRA_OPTS="--human-readable --exclude-from=/etc/portage/rsync_excludes --prune-empty-dirs --progress --stats"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage/layman/xfce-dev /usr/local/portage/layman/berkano /usr/local/portage/layman/ephemeral /usr/local/portage/overlays/misc-gentoo-overlay /usr/local/portage/overlays/bugzilla-gentoo-overlay"
SYNC="rsync://rsync.au.gentoo.org/gentoo-portage"
USE="X a52 aac acl alsa amd64 bash-completion bzip2 cairo cdr cleartype cli cracklib crypt cups dbus dga dirac directfb dmx dri dvd dvdr dvdread encode exif fam fbcon ffmpeg flac fontconfig fortran gd gdbm gif glitz gmp gnutls gs gstreamer gtk hal iconv isdnlog jpeg lame libnotify mad midi mmap mmx mng mp3 mp4 mpeg mudflap ncurses network-cron nls nptl nptlonly nsplugin offensive ogg opengl openmp pam pango pcre pdf perl png postscript pppd python readline reflection sasl schroedinger session sound spell spl sse sse2 sse3 ssl ssse3 startup-notification svg sysfs tcpd theora threads tiff truetype unicode v4l v4l2 vorbis xcomposite xft xinerama xml xorg xpm xscreensaver xv xvid 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 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" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en" USERLAND="GNU" VIDEO_CARDS="nvidia nv vesa"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS
Comment 1 Joshua Rich 2009-03-29 08:41:27 UTC
Created attachment 186625 [details, diff]
patch to Encode-Detect-1.01.ebuild
Comment 2 Torsten Veller (RETIRED) gentoo-dev 2009-03-29 19:31:15 UTC
This should be fixed.
I've remove the extra-linker-flags again and we have to look for a solution for bug 233354.

Thanks
Comment 3 Joshua Rich 2009-03-29 20:50:59 UTC
Thanks Torsten,

Hope you can work through a solution to bug #233354.

Regards,

Joshua