Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 54708 - iproute2-2.6.7.20040608 compile error.
Summary: iproute2-2.6.7.20040608 compile error.
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High blocker (vote)
Assignee: Gentoo's Team for Core System packages
URL:
Whiteboard:
Keywords:
: 55235 (view as bug list)
Depends on:
Blocks:
 
Reported: 2004-06-21 21:50 UTC by Lee Trager
Modified: 2004-06-28 17:34 UTC (History)
1 user (show)

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


Attachments
2.6.7-compat.patch (2.6.7-compat.patch,903 bytes, patch)
2004-06-22 05:55 UTC, Dennis Freise
Details | Diff
complete error output (iproute2-2.6.7.20040608.log,14.40 KB, text/plain)
2004-06-22 08:01 UTC, Harm Geerts
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Lee Trager 2004-06-21 21:50:56 UTC
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:  
=
Comment 1 SpanKY gentoo-dev 2004-06-21 22:00:38 UTC
you neglected to provide anything the bug reporting page asked you to (like `emerge info`)
Comment 2 Lee Trager 2004-06-21 22:09:21 UTC
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"
Comment 3 SpanKY gentoo-dev 2004-06-21 22:28:03 UTC
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
Comment 4 Dennis Freise 2004-06-22 04:40:41 UTC
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"
Comment 5 Dennis Freise 2004-06-22 05:54:34 UTC
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.
Comment 6 Dennis Freise 2004-06-22 05:55:35 UTC
Created attachment 33821 [details, diff]
2.6.7-compat.patch
Comment 7 SpanKY gentoo-dev 2004-06-22 07:42:07 UTC
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
Comment 8 Harm Geerts 2004-06-22 08:01:39 UTC
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
Comment 9 Tim Yamin (RETIRED) gentoo-dev 2004-06-22 10:29:08 UTC
I'm going to backport the header change to 2.6.6-r1... So no change is needed to iproute2.
Comment 10 Tim Yamin (RETIRED) gentoo-dev 2004-06-22 10:38:02 UTC
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...
Comment 11 SpanKY gentoo-dev 2004-06-22 13:00:38 UTC
all issues mentioned here should be resoleved with the patches ive added to cvs


Comment 12 SpanKY gentoo-dev 2004-06-28 17:34:07 UTC
*** Bug 55235 has been marked as a duplicate of this bug. ***