When I try to emerge rrdtool-1.2.0 with the +tcltk USE flag, the emerge fails, complaining about missing header files. When I alter the complaining file (tclrrd.c) to use ../../src/rrd_tool.h and rrd_format.h, the compilation moves on. However, when the process gets to linking, a non-existant (AFAICT) library (rrd_private) is being referenced on the linker command-line, causing the process to fail again. USE="-tcltk" emerge =rrdtool-1.2.0 works without errors. Reproducible: Always Steps to Reproduce: 1.USE="+tcltk" emerge =rrdtool-1.2.0 2. 3. Actual Results: Fails Expected Results: Compiled i686-pc-linux-gnu-gcc -O2 -march=athlon-xp -fomit-frame-pointer -fPIC -DPIC - Wall -pedantic -Wshadow -Wpointer-arith -Wcast-align -Wmissing-prototypes - Wmissing-declarations -Wnested-externs -Winline -W -fPIC -c tclrrd.c - DVERSION=\"1.2.0\" tclrrd.c:16:22: rrd_tool.h: No such file or directory tclrrd.c:17:24: rrd_format.h: No such file or directory tclrrd.c: In function `getopt_init': tclrrd.c:37: error: `optind' undeclared (first use in this function) tclrrd.c:37: error: (Each undeclared identifier is reported only once tclrrd.c:37: error: for each function it appears in.) +++warnings make[3]: *** [tclrrd.o] Error 1 make[3]: Leaving directory `/var/tmp/portage/rrdtool-1.2.0/work/rrdtool-1.2.0/ bindings/tcl' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/var/tmp/portage/rrdtool-1.2.0/work/rrdtool-1.2.0/ bindings' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/rrdtool-1.2.0/work/rrdtool-1.2.0' make: *** [all] Error 2 After patching tclrrd.c to use #include "../../src/rrd_tool.h" #include "../../src/rrd_format.h" instead: gcc -pipe -shared -L/usr/lib -L../../src -L../src/.libs tclrrd.o -o tclrrd.so - lrrd_private -lm /usr/lib/gcc/i686-pc-linux-gnu/3.4.3-20050110/../../../../i686-pc-linux-gnu/bin/ ld: cannot find -lrrd_private collect2: ld returned 1 exit status make[3]: *** [tclrrd.so] Error 1 make[3]: Leaving directory `/var/tmp/portage/rrdtool-1.2.0/work/rrdtool-1.2.0/ bindings/tcl' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/var/tmp/portage/rrdtool-1.2.0/work/rrdtool-1.2.0/ bindings' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/rrdtool-1.2.0/work/rrdtool-1.2.0' make: *** [all] Error 2
Same here, emerge info is; Portage 2.0.51.20-r5 (default-linux/x86/2005.0, gcc-3.4.3-20050110, glibc-2.3.5- r0, 2.6.11-gentoo-r6 i686) ================================================================= System uname: 2.6.11-gentoo-r6 i686 AMD Athlon(tm) XP 2100+ Gentoo Base System version 1.6.11 distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disable d] ccache version 2.4 [enabled] dev-lang/python: 2.3.5 sys-apps/sandbox: 1.2.2 sys-devel/autoconf: 2.13, 2.59-r6 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.5 sys-devel/binutils: 2.15.92.0.2-r8 sys-devel/libtool: 1.5.16 virtual/os-headers: 2.6.11 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-march=athlon-xp -O2 -fomit-frame-pointer -pipe" CHOST="i686-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/texmf/web2c /etc/env.d" CXXFLAGS="-march=athlon-xp -O2 -fomit-frame-pointer -pipe" DISTDIR="/nfs/distfiles" FEATURES="autoconfig buildpkg ccache distlocks sandbox sfperms strict test" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/nfs/overlay" SYNC="rsync://stargazer.weeve.org/gentoo-portage" USE="x86 3dnow 3dnowex 3dnowext X X509 a52 aac aalib acpi adns alsa apm avi bash-completion berkdb bitmap-fonts cdparanoia cdr chroot crypt cups curl dlloader dmx dts dvd dvdr dvdread emacs emboss encode esd ethereal fam fbcon flac font-server foomaticdb fortran gd gdbm ggi gif gnutls gpm graphviz gtk gtk2 guile imagemagick imlib jabber jack java javascript jpeg ldap libcaca libclamav libg++ libwww live lm_sensors lynxkeymap lzo mad mailwrapper matroska mikmod mmx mmx2 mmxext motif mozilla mp3 mpeg mpeg4 msn ncurses nethack network nls nptl offensive ogg oggvorbis openal opengl oscar oss pam pdflib perl png ppds python quicktime readline real rrdtool rtc samba sblive sdl slang smux snmp speex spell sse sse2 ssl svg svga tcltk tcpd tetex theora tiff truetype truetype-fonts type1-fonts unicode usb userlocales vcd vidix vorbis win32codecs xanim xface xgetdefault xml xml2 xmms xprint xv xvid yahoo zlib" Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, LINGUAS
Created attachment 57682 [details, diff] Patch for correct TCL bindings compilation Automake fixes.
Created attachment 57683 [details] updated ebuild Ebuild with above patch support.
Afaik, this bug should go to "Ebuilds" section, not "Applications"
Nickolay, FYI that doesn't fix it here. Still complains about not finding -lrrd.
Created attachment 57749 [details, diff] Updated patch Hopefuly fix linking issue.
Latest patch an ebuild provieded here worked for me. Thx.
I updated this ebuild yesterday (May 3rd), along with a version bump (see bug 91287). Can you guys tell me if it fixes the problem for you?
Yes. Everything is ok.
Thanks.