sys-apps/iproute-20010824-r3 is failing to build. It looks like there is a compile problem, with iproute including a file from /usr/src/linux when it probably should be getting it from /usr/include/linux. My /usr/src/linux is pointing to linux-2.4.22 and my kernel headers are 2.4.19. I'm running 2.4.21 currently, since I have not had a chance to reboot the system in the last few months -- I don't think this is the issue, though. Reproducible: Always Steps to Reproduce: 1. emerge iproute with kernel 2.4.22 Actual Results: Calculating dependencies ...done! >>> emerge (1 of 1) sys-apps/iproute-20010824-r3 to / >>> md5 src_uri ;-) iproute2-2.4.7-now-ss010824.tar.gz >>> md5 src_uri ;-) iproute_20010824-9.diff.gz >>> Unpacking source... >>> Unpacking iproute2-2.4.7-now-ss010824.tar.gz to /var/tmp/portage/iproute- 20010824-r3/work >>> Unpacking iproute_20010824-9.diff.gz to /var/tmp/portage/iproute-20010824- r3/work * Applying iproute_20010824- 9.diff... [ ok ] >>> Source unpacked. make[1]: Entering directory `/var/tmp/portage/iproute-20010824- r3/work/iproute2/lib' gcc -D_GNU_SOURCE -march=pentium2 -O2 -pipe -Wstrict-prototypes -Wall -g - I../include -I../include-glibc -include ../include-glibc/glibc-bugs.h - I/usr/src/linux/include -DRESOLVE_HOSTNAMES -c -o ll_map.o ll_map.c gcc -D_GNU_SOURCE -march=pentium2 -O2 -pipe -Wstrict-prototypes -Wall -g - I../include -I../include-glibc -include ../include-glibc/glibc-bugs.h - I/usr/src/linux/include -DRESOLVE_HOSTNAMES -c -o libnetlink.o libnetlink.c In file included from ../include-glibc/netinet/in.h:7, from libnetlink.c:20: /usr/src/linux/include/linux/in.h:140: field `gr_group' has incomplete typeIn file included from ../include-glibc/netinet/in.h:7, from ll_map.c:19: /usr/src/linux/include/linux/in.h:140: field `gr_group' has incomplete type /usr/src/linux/include/linux/in.h:141: confused by earlier errors, bailing out make[1]: *** [libnetlink.o] Error 1 make[1]: *** Waiting for unfinished jobs.... /usr/src/linux/include/linux/in.h:141: confused by earlier errors, bailing out make[1]: *** [ll_map.o] Error 1 make[1]: Leaving directory `/var/tmp/portage/iproute-20010824- r3/work/iproute2/lib' make: *** [all] Error 2 !!! ERROR: sys-apps/iproute-20010824-r3 failed. !!! Function src_compile, Line 58, Exitcode 2 !!! (no error message) Portage 2.0.49-r3 (default-x86-1.4, gcc-3.2.3, glibc-2.3.2-r1, 2.4.21) ================================================================= System uname: 2.4.21 i686 Celeron (Mendocino) distcc 2.9 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-march=pentium2 -O2 -pipe" CHOST="i686-pc-linux-gnu" COMPILER="gcc3" CONFIG_PROTECT="/etc /var/qmail/control /usr/share/config /usr/kde/2/share/conf ig /usr/kde/3/share/config /var/bind" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" CXXFLAGS="-march=pentium2 -O2 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="sandbox ccache autoaddcvs" GENTOO_MIRRORS="rsync://gentoo.seren.com/gentoo http://gentoo.seren.com/gentoo ftp://gentoo.mirrors.pair.com/ http://gentoo.mirrors.pair.com/ http://gentoo.noved.org/" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.us.gentoo.org/gentoo-portage" USE="x86 oss apm crypt cups encode foomaticdb gif jpeg libg++ mad mmx ncurses nls oggvorbis pdflib png slang spell truetype xml2 xmms xv zlib gdbm berkdb readline java tcpd pam libwww ssl perl python imap mbox odbc tiff -3dnow - arts -avi -gpm -gtk -imlib -kde -gnome -mikmod -motif -mpeg -opengl -qt - quicktime -sdl -svga -X"
it's known that headers newer than 2.4.19 don't allow the package to build. sys-apps/iproute-20010824-r4 points to the headers in /usr/include/ instead of in the kernel tree.
Email from Tue, 23 Sep 2003 21:46:49 -0500 > ??? The headers I'm running on the machine *are* 2.4.19. The kernel in > /usr/src/linux is at 2.4.22. > > michael@cvs michael $ cat /usr/include/linux/version.h > #define UTS_RELEASE "2.4.19" > #define LINUX_VERSION_CODE 132115 > #define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c)) > > Should I downgrade the kernel to get iproute to build? This doesn't make any > sense to me, but I will do that if it's necessary. Nope, you don't need to downgrade the kernel at all. -r3 of iproute built against the headers in /usr/src/linux -r4 of iproute builds against the headers in /usr/include instead. P.S. please respond to bugs on bugzilla, so that emails don't get lost along the way.
Hi Robin, Thanks for the clarification -- I had misread your reply and though you were talking about the same version I was.. :P I noticed -r4 is unmasked now; it emerged without errors on my systems and appears to be working very well. Thanks for your support, Michael