Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 345987 - dev-perl/perl-tk-804.029 fails to emerge due to conflicting declaration of XKeycodeToKeysym
Summary: dev-perl/perl-tk-804.029 fails to emerge due to conflicting declaration of XK...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Perl team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 385621
  Show dependency tree
 
Reported: 2010-11-18 16:32 UTC by Juergen Rose
Modified: 2011-10-04 16:52 UTC (History)
2 users (show)

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


Attachments
/var/tmp/portage/dev-perl/perl-tk-804.029/temp/build.log (build.log,37.44 KB, text/plain)
2010-11-18 16:33 UTC, Juergen Rose
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Juergen Rose 2010-11-18 16:32:54 UTC
'emerge perl-tk' fails with:
...
x86_64-pc-linux-gnu-gcc -c  -I..  -I/usr/include/freetype2 -I. -Ibitmaps  -I/usr/include/freetype2 -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -march=nocona -O2 -pipe -fomit-frame-pointer   -DVERSION=\"804.029\" -DXS_VERSION=\"804.029\" -fPIC "-I/usr/lib64/perl5/5.12.2/x86_64-linux-thread-multi/CORE"   -Wall -Wno-implicit-int -Wno-comment -Wno-unused -D__USE_FIXED_PROTOTYPES__ Xlib_f.c
In file included from Xlib_f.c:8:0:
Xlib.h:22:15: error: conflicting types for ‘XKeycodeToKeysym’
/usr/include/X11/Xlib.h:1694:15: note: previous declaration of ‘XKeycodeToKeysym’ was here
make[1]: *** [Xlib_f.o] Error 1
make[1]: Leaving directory `/var/tmp/portage/dev-perl/perl-tk-804.029/work/Tk-804.029/pTk'


Reproducible: Always




root@moose:/usr/src(95)# emerge --info =dev-perl/perl-tk-804.029
Portage 2.1.9.24 (default/linux/amd64/10.0/desktop, gcc-4.5.1, glibc-2.12.1-r3, 2.6.36-gentoo x86_64)
=================================================================
                        System Settings
=================================================================
System uname: Linux-2.6.36-gentoo-x86_64-Intel-R-_Core-TM-2_Quad_CPU_Q9650_@_3.00GHz-with-gentoo-2.0.1
Timestamp of tree: Thu, 18 Nov 2010 03:00:21 +0000
app-shells/bash:     4.1_p9
dev-java/java-config: 2.1.11-r2
dev-lang/python:     2.6.6-r1, 3.1.2-r4
dev-util/cmake:      2.8.1-r2
sys-apps/baselayout: 2.0.1-r1
sys-apps/openrc:     0.6.4
sys-apps/sandbox:    2.3-r1
sys-devel/autoconf:  2.13, 2.68
sys-devel/automake:  1.7.9-r2, 1.8.5-r4, 1.9.6-r3, 1.10.3, 1.11.1
sys-devel/binutils:  2.20.1-r1
sys-devel/gcc:       4.4.5, 4.5.1
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.4
sys-devel/make:      3.82
virtual/os-headers:  2.6.35 (sys-kernel/linux-headers)
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="* -@EULA PUEL dlj-1.1 skype-eula googleearth AdobeFlash-10.1 cadsoft"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=nocona -O2 -pipe -fomit-frame-pointer"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/eselect/postgresql /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.3/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cli-php5.3/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="assume-digests binpkg-logs distlocks fixlafiles fixpackages news parallel-fetch protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FFLAGS="-march=nocona -O2 -pipe -fomit-frame-pointer"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_US.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LINGUAS="de fr"
MAKEOPTS="-j5"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
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="/var/lib/layman/science /var/lib/layman/x11 /var/lib/layman/java-overlay /var/lib/layman/sunrise /var/lib/layman/arcon /var/lib/layman/pro-audio /var/lib/layman/n4g /var/lib/layman/qting-edge /usr/local/portage /var/lib/cpan"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="64bit R X Xaw3d a52 aac abiword acl acpi admin afs alsa amd64 ao apache2 applet archive arpack asf aspell assistant audacious audiofile automap automount bash-completion beagle berkdb blas blast bluetooth boo boost branding bzip2 cairo cdda cddb cdf cdio cdparanoia cdr cg cgi chm cli consolekit corba cracklib crypt css cuda cups curl cxx daap db dbase dbi dbm dbus designer devhelp device-mapper dga dia djvu doc dri ds2490 ds9097 ds9097u dts dv dvb dvd dvdr dvi dynamicplugin eds elf emacs emboss emf empathy encode epiphany evo examples exif expat extensions extra extras fam fame ffmpeg fftw firefox fits flac fltk fontconfig foomaticdb fortran fpx fts3 fuse galago garmin gd gdal gdbm gedit geoip geolocation geos gif gimp ginac git glade glib gml gmp gmtsuppl gnokii gnome gnome-keyring gnome-print gnuplot gnutls gphoto2 gpm grammar graphics graphtft graphviz grass gs gsl gsm gstreamer gtk guile hal harness hddtemp hdf hdf5 hdri hlapi http httpd hvm iconv icq icu id3 ide imagemagick imap innodb inotify ipod ipv6 irda ithreads jabber jadetex java java5 java6 jbig john jpeg jpeg2k kdrive kerberos kpathsea kqemu kvm ladspa lame lapack latex latex3 lcms ldap lensfun libffi libgda libnotify libsamplerate lirc lm_sensors lua lzo mad mail maildir mailwrapper mapnik math matroska mikmod mkl mmx mmxext mng modules mono moonlight motif mozdevelop mozilla mp3 mp4 mpeg mpi mplayer mtp mudflap multilib musicbrainz mysql mysqli nautilus ncurses neXt netcdf netpbm network networking networkmanager nfs nls nntp nptl nptlonly nsplugin ntfs ntp numarray numeric nvidia obex objc ocaml octave odbc ogdi ogg ole openexr opengl openmp overview pae pam pango pcre pda pdf perl plotutils plugins png podcast policykit posix postgres postscript ppds pppd preview-latex proj projectx pstricks pulseaudio pymol python python-bindings q16 q32 qemu qhull qt3support qt4 quicktime readline reiserfs reports rle romio rpc rrdcgi rrdtool samba sasl science sdl secure-delete semantic-desktop server session sip slang slp smbclient smp sms sndfile snmp soup sox speex spell sql sqlite sse sse2 ssl startup-notification stlport subtitles subversion suexec svg swig sysfs szip t1lib tcl tcpd tex tex4ht texmacs theora threads thunderbird tidy tiff tk tntc tools truetype udev unicode usb userlocales utempter v4l2 virtualbox vorbis wav webdav webdav-serf webkit wifi wmf wxwidgets x264 xattr xcb xemacs xext xine xml xmlreader xmlrpc xorg xpm xulrunner xv xvid xvmc zlib zvbi" ALSA_CARDS="intel8x0" 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 auth_digest authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgid dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so speling status unique_id userdir usertrack vhost_alias" CAMERAS="canon" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" 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="keyboard mouse                evdev               " KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de fr" NETBEANS_MODULES="apisupport cnd dlight enterprise ergonomics groovy gsf harness ide identity j2ee java mobility nb php profiler ruby websvccommon xml" PHP_TARGETS="php5-2" QEMU_SOFTMMU_TARGETS="i386 x86_64" QEMU_USER_TARGETS="i386 x86_64" RUBY_TARGETS="ruby18 jruby" USERLAND="GNU" VIDEO_CARDS="nv nvidia nouveau 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, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

=================================================================
                        Package Settings
=================================================================

dev-perl/perl-tk-804.029 was built with the following:
USE="(multilib)"



sci-physics/root-5.26.00e-r1 (/usr/lib64/root/cint/cint/include/X11/Xlib.h)
dev-perl/perl-tk-804.029 (/usr/lib64/perl5/vendor_perl/5.12.2/x86_64-linux-thread-multi/Tk/pTk/Xlib.h)
x11-libs/libX11-1.3.99.903 (/usr/include/X11/Xlib.h)


root@moose:/usr/src(97)# emerge -pqv =dev-perl/perl-tk-804.029
[ebuild   R   ] dev-perl/perl-tk-804.029
Comment 1 Juergen Rose 2010-11-18 16:33:31 UTC
Created attachment 254729 [details]
/var/tmp/portage/dev-perl/perl-tk-804.029/temp/build.log
Comment 2 biohazrd 2010-11-25 17:31:28 UTC
Confirmed build fail during emerge -e world results in identical failure.
Comment 3 Yevgeny Armor 2010-11-26 17:38:02 UTC
same here, ~amd64
Comment 4 Johannes Schmidt 2010-11-26 21:52:53 UTC
This happened for me too at amd64 while rebuilding world for gcc-4.5.1-r1
Comment 5 biohazrd 2010-11-27 05:59:56 UTC
(In reply to comment #4)
> This happened for me too at amd64 while rebuilding world for gcc-4.5.1-r1
> 

It happens on GCC 4.4.5 as well.  I downgraded from 4.5.1 just to try.  My guess is it has something to do with an update to xorg and Xlib.h changed.
x11-libs/libX11-1.4.0 upgraded about the same time as this problem occurred and both packages contain Xlib.h header files.  I am going to look at the difference from them and try to patch it.

equery b Xlib.h
 * Searching for Xlib.h ... 
dev-perl/perl-tk-804.029 (/usr/lib64/perl5/vendor_perl/5.12.1/x86_64-linux/Tk/pTk/Xlib.h)
x11-libs/libX11-1.4.0 (/usr/include/X11/Xlib.h)



Comment 6 Torsten Veller (RETIRED) gentoo-dev 2010-11-27 07:10:46 UTC
Fixed. The only change in Xlib.h from 1.3.6 to 1.4.0 is 
s/_XLIB_H_/_X11_XLIB_H_/.

commit d0cbf388919364fe6b5b9127f36426eb744090a0
Author: Jeremy Huddleston <jeremyhu@apple.com>
Date:   Sun Sep 26 21:21:16 2010 -0700

    Add an "X11_" string to header guards to avoid possible collision
    
    This addresses a build failure which can result from <X11/Xlocale.h> and
    <xlocale.h> being included in the same code since they both used the same
    _XLOCALE_H_ protection.
    
    Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>

Comment 7 Brant Gurganus 2010-11-27 08:04:20 UTC
Is this sent to the upstream perl-tk as well?
Comment 8 Juergen Rose 2010-12-01 08:50:19 UTC
@Torsten

Do you have a patch, that we can use to avoid this issue?
Comment 9 Alexander Dubov 2010-12-01 10:00:05 UTC
I have a new version of xlib installed (with X11_* guards), yet perl-tk still fails to compile with the same error.
The bug is not "FIXED" by any measure.
Comment 10 Torsten Veller (RETIRED) gentoo-dev 2010-12-01 10:10:35 UTC
Attach your build log, please.
Comment 11 Juergen Rose 2010-12-08 11:33:09 UTC
'emerge perl-tk-804.029' works again, maybe due to tcltk-8.5.9.