I just went to update my system and I get a compile error with iproute2-2.6.7.20040608. I tired updating it twice but I get the same thing each time. Here is the compile errors q_delay.c: In function `delay_parse_opt': q_delay.c:42: error: storage size of `opt' isn't known q_delay.c:42: warning: unused variable `opt' q_delay.c: In function `delay_print_opt': q_delay.c:126: error: dereferencing pointer to incomplete type q_delay.c:131: error: dereferencing pointer to incomplete type q_delay.c:132: error: dereferencing pointer to incomplete type make[1]: *** [q_delay.o] Error 1 make[1]: *** Waiting for unfinished jobs.... make[1]: Leaving directory `/var/tmp/portage/iproute2-2.6.7.20040608/work/iprout e2-2.6.7/tc' make[1]: Entering directory `/var/tmp/portage/iproute2-2.6.7.20040608/work/iprou te2-2.6.7/misc' gcc -D_GNU_SOURCE -march=pentium4 -O3 -pipe -fomit-frame-pointer -Wstrict-protot ypes -Wall -g -I../include-glibc -include ../include-glibc/glibc-bugs.h -I/usr/ include -I../include -DRESOLVE_HOSTNAMES -c -o ss.o ss.c bison ssfilter.y -o ssfilter.c ssfilter.y: conflicts: 27 shift/reduce gcc -D_GNU_SOURCE -march=pentium4 -O3 -pipe -fomit-frame-pointer -Wstrict-protot ypes -Wall -g -I../include-glibc -include ../include-glibc/glibc-bugs.h -I/usr/ include -I../include -DRESOLVE_HOSTNAMES -c -o nstat.o nstat.c gcc -D_GNU_SOURCE -march=pentium4 -O3 -pipe -fomit-frame-pointer -Wstrict-protot ypes -Wall -g -I../include-glibc -include ../include-glibc/glibc-bugs.h -I/usr/ include -I../include -DRESOLVE_HOSTNAMES -c -o ifstat.o ifstat.c ss.c: In function `tcp_show_info': ss.c:1321: error: structure has no member named `tcpi_rcv_rtt' ss.c:1322: error: structure has no member named `tcpi_rcv_rtt' ss.c:1323: error: structure has no member named `tcpi_rcv_space' ss.c:1324: error: structure has no member named `tcpi_rcv_space' ss.c:1326: error: `TCPDIAG_VEGASINFO' undeclared (first use in this function) ss.c:1326: error: (Each undeclared identifier is reported only once ss.c:1326: error: for each function it appears in.) ss.c:1330: error: dereferencing pointer to incomplete type ss.c:1333: error: dereferencing pointer to incomplete type ss.c:1334: error: dereferencing pointer to incomplete type ss.c:1340: error: dereferencing pointer to incomplete type make[1]: *** [ss.o] Error 1 make[1]: *** Waiting for unfinished jobs.... make[1]: Leaving directory `/var/tmp/portage/iproute2-2.6.7.20040608/work/iprout e2-2.6.7/misc' make: *** [all] Error 2 Reproducible: Always Steps to Reproduce: 1. emerge iproute2-2.6.7.20040608 2. wait for compile error Expected Results: =
you neglected to provide anything the bug reporting page asked you to (like `emerge info`)
I just saw this that might be helpful. * Your linux-headers in /usr/include/linux are too old to * support the HFSC scheduler. It has been disabled. I have the latest kernel headers that x86 has(2.4.22). Anyway here is my emerge info. Portage 2.0.50-r8 (default-x86-1.4, gcc-3.3.3, glibc-2.3.4.20040619-r0, 2.6.7) ================================================================= System uname: 2.6.7 i686 Intel(R) Pentium(R) 4 CPU 1400MHz Gentoo Base System version 1.4.16 Autoconf: sys-devel/autoconf-2.59-r4 Automake: sys-devel/automake-1.8.5-r1 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-march=pentium4 -O3 -pipe -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.1 /share/config /usr/kde/3.2/share/config /usr/kde/3/share/config /usr/lib/mozilla /defaults/pref /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=pentium4 -O3 -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox" GENTOO_MIRRORS="http://gentoo.oregonstate.edu http://distro.ibiblio.org/pub/Linu x/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="3dnow X aalib aim alsa apm arts audiofile avi berkdb bonobo cdr crypt cups dvb dvd enable-gui encode esd foomaticdb gdbm gif gimpprint gnome gpm gtk gtk2 g tkhtml imap imlib ipv6 java jpeg kde libg++ libwww mad mikmod mng motif mozilla mpeg nas ncurses nls offensive oggvorbis opengl oscar oss pam pda pdflib perl pn g python qt quicktime readline scanner sdl slang spell ssl svga tcltk tcpd tiff truetype usb videos wmf x86 xml2 xmms xv zlib"
the warning is harmless ... it just means you dont have support for the HFSC enabled ... i'll test on a box with 2.4.x headers and see if i can reproduce this
Same here, except that I've got 2.6.6-headers. Portage 2.0.50-r8 (hardened-x86-2004.0, gcc-3.3.3, glibc-2.3.3.20040420-r0, 2.6.5-gentoo-r1) ================================================================= System uname: 2.6.5-gentoo-r1 i686 AMD Duron(tm) Gentoo Base System version 1.4.16 distcc 2.14 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] Autoconf: sys-devel/autoconf-2.59-r4 Automake: sys-devel/automake-1.8.5-r1 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CFLAGS="-march=athlon -mcpu=athlon -mmmx -m3dnow -O2 -pipe -fomit-frame-pointer -ffast-math -fforce-addr -falign-functions=4" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3/share/config /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/bind /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=athlon -mcpu=athlon -mmmx -m3dnow -O2 -pipe -fomit-frame-pointer -ffast-math -fforce-addr -falign-functions=4" DISTDIR="/storage/portage/distfiles" FEATURES="autoaddcvs ccache sandbox sfperms strict" GENTOO_MIRRORS="http://ftp.easynet.nl/mirror/gentoo/ ftp://gentoo.inode.at/source/ http://gentoo.inode.at" MAKEOPTS="-j2" PKGDIR="/storage/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://localhost/gentoo-portage" USE="3dnow acl acpi activefilter apache2 apm atm berkdb cdr chroot crypt curl doc erandom evms2 exiscan-acl freetds gd gdbm gif gmp gpm hardened hardenedphp imagemagick imap innodb ipv6 java jpeg ldap libwww lmtp maildir mcal mmx mysql nagios-dns nagios-ntp nagios-ping nagios-ssh ncurses nls nptl odbc pam parse-clocks pcre pdflib perl pic pie png python readline samba sasl slang snmp socks5 sse ssl tcpd tetex threads tiff truetype usb vhosts wildlsearch x86 xml xml2 yaz zlib"
struct tcp_info is declared in linux/tcp.h I looked through a lot of kernel-versions and found out, that tcpi_rcv_rtt and tcpi_rcv_space were added in linux-2.6.7. As the function in iproute2 is just printing out these values, I assume it's safe to comment out these two values for now. As for TCPDIAG_VEGASINFO: that's only defined in 2.6.x kernels, not in 2.4.x. There's simply an #ifdef missing. Patch follows, please test.
Created attachment 33821 [details, diff] 2.6.7-compat.patch
ok, i dont get the error because i'm using linux-headers 2.6.7 ;) i reverted the change back in for using glibc's tcp.h and these issues started popping up on my box ... i'll make a little more dynamic patch to detect the struct members for tcp info
Created attachment 33836 [details] complete error output Patch doesn't work for me, the problems seem to start much earlier when including /usr/include/netinet/in.h (part of sys-libs/glibc-2.3.3.20040420) Not sure if this keeps it from being build properly. Also with linux-headers-2.4.22 I attached the complete output from compiling this package
I'm going to backport the header change to 2.6.6-r1... So no change is needed to iproute2.
Done; sending this back to base-system since this seems to affect 2.4 header users too so that patch probably needs to be dynamically applied in that scenario...
all issues mentioned here should be resoleved with the patches ive added to cvs
*** Bug 55235 has been marked as a duplicate of this bug. ***