Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 270941 - sci-chemistry/molden-4.7 fails to compile with glibc-2.10 -- ambiguous use of linkat
Summary: sci-chemistry/molden-4.7 fails to compile with glibc-2.10 -- ambiguous use of...
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Chemistry-Related Packages
: 301000 (view as bug list)
Depends on:
Blocks: glibc-2.10
  Show dependency tree
Reported: 2009-05-23 14:11 UTC by milan hodoscek
Modified: 2010-02-26 05:34 UTC (History)
2 users (show)

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

temporary fix for xwin.c (molden-4.7.ebuild,1.76 KB, text/plain)
2009-06-21 07:24 UTC, milan hodoscek

Note You need to log in before you can comment on or make changes to this bug.
Description milan hodoscek 2009-05-23 14:11:38 UTC
molden's xwin.c uses linkat variable which is also the name of a function in /usr/include/unistd.h from glibc-2.10.1. The easiest fix is to change all linkat occurances in xwin.c and recompile, ie ebuild ...molden {compile|install|qmerge}
or make a patch :-)
Comment 1 Justin Lecher gentoo-dev 2009-05-23 16:25:29 UTC
please past the exact error
Comment 2 Justin Lecher gentoo-dev 2009-05-23 16:33:26 UTC

i686-pc-linux-gnu-gcc -O2 -pipe -march=prescott -fomit-frame-pointer -c -I/usr/X11R6/include -DDOBACK -DHASTIMER -DCOLOR_OFFSET=0.0   -c -o xwin.o xwin.c
xwin.c:3779: error: ‘linkat’ redeclared as different kind of symbol
/usr/include/unistd.h:776: error: previous declaration of ‘linkat’ was here
xwin.c: In function ‘DebugStructure’:
xwin.c:12832: warning: format ‘%d’ expects type ‘int’, but argument 3 has type ‘struct QBOXSTRU *’
xwin.c: In function ‘doamb’:
Comment 3 Justin Lecher gentoo-dev 2009-05-23 16:45:27 UTC
please provide output of emerge --info
Comment 4 Justin Lecher gentoo-dev 2009-05-23 16:46:44 UTC
fine at

glibc-2.8 @ x86

glibc-2.9 @ amd64
Comment 5 milan hodoscek 2009-05-23 17:45:03 UTC
(In reply to comment #3)
> please provide output of emerge --info

The bug is so obvoius and I tried it on different systems, like paludis and emerge, so it doesn't need much of the explanation :-)
Also, there are many other packages which fail with the new glibc. At some point it should be fixed upstream.

But here we go with the emerge --info:
Portage (default/linux/amd64/2008.0, gcc-4.3.3, glibc-2.10.1-r0, 2.6.30-rc6 x86_64)
System uname: Linux-2.6.30-rc6-x86_64-Intel-R-_Core-TM-2_CPU_T5600_@_1.83GHz-with-gentoo-2.0.0
Timestamp of tree: Sat, 23 May 2009 12:30:01 +0000
app-shells/bash:     4.0_p24
dev-java/java-config: 2.1.8
dev-lang/python:     2.6.2
dev-python/pycrypto: 2.0.1-r8
dev-util/cmake:      2.6.4
sys-apps/baselayout: 2.0.0
sys-apps/openrc:     0.4.3-r2
sys-apps/sandbox:    1.9
sys-devel/autoconf:  2.13, 2.63-r1
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.2
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.6a
virtual/os-headers:  2.6.29
ACCEPT_KEYWORDS="amd64 ~amd64"
CFLAGS="-O2 -pipe -march=core2"
CONFIG_PROTECT="/etc /usr/share/config /var/lib/hsqldb /var/spool/torque"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/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 /etc/udev/rules.d"
CXXFLAGS="-O2 -pipe -march=core2"
FEATURES="distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch"
LINGUAS="en en_US sl"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTDIR_OVERLAY="/usr/portage/local/layman/gnome /usr/portage/local/layman/kde-testing /usr/local/portage"
USE="X a52 aac aalib accessibility acl acpi aiglx alsa amarok amd64 amr amrnb amrr amrwb ansi apache2 atlas auctex audiofile autoipd bash-completion bbdb beagle berkdb blas bonobo bootsplash branding brasero bzip2 cairo canna cardbus cdaudio cdb cdda cddax cddb cdinstall cdparanoia cdr cdrkit cdrom chm chroot cjk cli color-console consolekit context cpudetection cracklib crypt css cups curl daap dbus detex dpms dri dv dvd dvdnav dvdr dvdread dvi dvi2tty eap-sim eds emacs emacs-w3 emacs23icons embedded enblend encode enscript epiphany epson erandom escreen evo exif exim exiscan-acl expat exscalibar extra fakevim fame fat fbcon fbdev fbsplash ffmpeg fftw firefox flac flash foomaticdb fortran freetype gcj gcl gd gdbm gif gimp gimpprint git glib glut glx gmp gnome gnome-keyring gnuplot gphoto2 gpm graphics graphviz gs gsl gsm gstreamer gstreamer010 gstreamer10 gtk gtk2 gtkhtml gzip-el hal html http httpd humanities i8x0 iconv icu id3 id3tag idn ieee1394 imagemagick imlib imlib2 ipod ipv6 isdnlog jack jadetex java javascript jpeg jpeg2k kde kpathsea lame lapack laptop latex latex3 lcms leim libcaca libffi libnotify libotf libsamplerate logitech-mouse lua lzo lzw mad mailbox maildir mailwrapper matroska mbox md5sum mdnsresponder-compat midi mjpeg mmap mmx mng mono mopac7 mozdevelop mozilla mozsvg mp3 mp4 mpeg mpeg2 mpeg4 mpi mplayer mpqc mudflap multilib musepack music musicbrainz mysql nautilus ncurses network networkmanager nls nodrm nptl nptlonly nsplugin ogg omega openbabel openexr opengl openmp pam pam_chroot pascal pcmcia pcre pdf perforce perl plotutils png pnm policykit posix postscript povray ppds pppd print pstricks publishers pulseaudio pymacs python qt3support qt4 quicktime rar readline reflection reiserfs rfkill rhythmbox rt2500usb rtc scanner science scp screen sdl session sift skey sockets socks5 sox spamassassin speex spell spf spl srs sse sse2 ssl stream subversion svg svgz sysfs t1lib tcl tcltk tcpd tetex tex tex4ht texmacs tga theora threads threadsafe thumbnail thunderbird tiff tk toolkit-scroll-bars truetype ttcp type1 unicode usb utf8 v4l v4l2 vcd vcdimager vim vim-pager vim-with-x vorbis wav wavpack web wifi wireshark wma wma123 wmf wordperfect wv wxgtk1 wxwindows x264 xanim xcb xcomposite xetex xft xgl xindy xine xinerama xml xorg xpm xrandr xulrunner xv xvid xvmc yv12 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 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 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" ELIBC="glibc" INPUT_DEVICES="mouse keyboard evdev synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en en_US sl" USERLAND="GNU" VIDEO_CARDS="intel"

Comment 6 Justin Lecher gentoo-dev 2009-05-23 17:51:11 UTC
(In reply to comment #5)
> (In reply to comment #3)
> > please provide output of emerge --info
> > 
> The bug is so obvoius and I tried it on different systems, like paludis and
> emerge, so it doesn't need much of the explanation :-)
> Also, there are many other packages which fail with the new glibc. At some
> point it should be fixed upstream.

The changes in unistd.h are marginal from 2.8 til 2.10. Having the emerge --info won't harm and might help breaking it down and fix.

Just always provide it and it is fine.
Comment 7 milan hodoscek 2009-06-21 07:24:55 UTC
Created attachment 195323 [details]
temporary fix for xwin.c

Just a simple fix for desperate people (I am attaching the whole .ebuild)
Comment 8 maxb 2009-07-17 15:15:59 UTC
(In reply to comment #7)
> Created an attachment (id=195323) [edit]
> temporary fix for xwin.c
> Just a simple fix for desperate people (I am attaching the whole .ebuild)

If you don't want to loose your ebuild after next syncing your portage tree, I recommend setting a local portage overlay:

(1) add in /etc/make.conf the following line:
(2) create dirs to:
(3) place ebuild from above here
(4) # cd /usr/local/portage/sci-chemistry/molden
(5) # ebuild molden-4.7.ebuild manifest
(6) # emerge -av =sci-chemistry/molden-4.7

have a nice day.
by the way, thanks for the ebuild!
Comment 9 milan hodoscek 2009-09-08 10:34:39 UTC
I wrote to molden author and he fixed the source (xwin.c). So upstream the problem is fixed. Since gentoo distribution makes a copy of molden4.7.tar.gz file, someone from gentoo must download the new version from upstream.
Comment 10 Patrick Lauer gentoo-dev 2009-09-22 18:21:15 UTC
Right, the fix is quite simple and easy.
But somehow vim lost the "ex" executable and can't be used now
(vim-7.2.238 installed, no ex bin. points at it existing in older versions)

So as long as that issue isn't cleared I can't fix the ebuild :(
Comment 11 Diego Elio Pettenò (RETIRED) gentoo-dev 2010-01-14 16:32:40 UTC
*** Bug 301000 has been marked as a duplicate of this bug. ***
Comment 12 Markus Dittrich (RETIRED) gentoo-dev 2010-02-26 05:34:32 UTC
This should be fixed in molden-4.8.