svgalib-1.9.18-r1 will not compile with distcc enabled. It compiles fine when I disable the distcc feature. Reproducible: Always Steps to Reproduce: 1. emerge svgalib Actual Results: make[1]: Entering directory `/usr/src/linux-2.6.6' CC [M] /var/tmp/portage/svgalib-1.9.18-r1/work/svgalib-1.9.18/kernel/svgalib_helper/main.o cc1: error: unrecognized option `-Wdeclaration-after-statement' distcc[30614] ERROR: compile on 192.168.0.131/5 failed make[2]: *** [/var/tmp/portage/svgalib-1.9.18-r1/work/svgalib-1.9.18/kernel/svgalib_helper/main.o] Error 1 make[1]: *** [/var/tmp/portage/svgalib-1.9.18-r1/work/svgalib-1.9.18/kernel/svgalib_helper] Error 2 make[1]: Leaving directory `/usr/src/linux-2.6.6' make: *** [default] Error 2 !!! ERROR: media-libs/svgalib-1.9.18-r1 failed. !!! Function src_compile, Line 95, Exitcode 2 !!! Failed to build kernel module! Expected Results: Successful emerge # emerge info svgalib Portage 2.0.50-r8 (default-x86-2004.0, gcc-3.3.3, glibc-2.3.3.20040420-r0, 2.6.6-epia) ================================================================= System uname: 2.6.6-epia i686 VIA Nehemiah Gentoo Base System version 1.4.16 distcc 2.13 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled] Autoconf: sys-devel/autoconf-2.59-r3 Automake: sys-devel/automake-1.8.3 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-march=i686 -msse -mmmx -mfpmath=sse -Os -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.2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=i686 -msse -mmmx -mfpmath=sse -Os -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache distcc sandbox" GENTOO_MIRRORS="http://gentoo.oregonstate.edu http://distro.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j7" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X alsa apache2 apm arts avi cle266 crypt divx4linux encode gdbm gif imlib jpeg kde libg++ libwww lirc mad mikmod motif mpeg mysql ncurses oggvorbis opengl pam pcmcia perl png qt quicktime readline samba sdl slang ssl svga truetype x86 xml2 xmms xv xvid zlib" # FEATURES="-distcc" emerge info svgalib Portage 2.0.50-r8 (default-x86-2004.0, gcc-3.3.3, glibc-2.3.3.20040420-r0, 2.6.6-epia) ================================================================= System uname: 2.6.6-epia i686 VIA Nehemiah Gentoo Base System version 1.4.16 distcc 2.13 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] Autoconf: sys-devel/autoconf-2.59-r3 Automake: sys-devel/automake-1.8.3 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-march=i686 -msse -mmmx -mfpmath=sse -Os -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.2/share/config /usr/kde/3/share/config /usr/share/config /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-march=i686 -msse -mmmx -mfpmath=sse -Os -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs ccache sandbox" GENTOO_MIRRORS="http://gentoo.oregonstate.edu http://distro.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j7" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="X alsa apache2 apm arts avi cle266 crypt divx4linux encode gdbm gif imlib jpeg kde libg++ libwww lirc mad mikmod motif mpeg mysql ncurses oggvorbis opengl pam pcmcia perl png qt quicktime readline samba sdl slang ssl svga truetype x86 xml2 xmms xv xvid zlib" Output of distccd on 192.168.0.131: distccd[3242] (dcc_check_client) connection from 192.168.0.128:35463 distccd[3242] compile from main.c to .tmp_main.o distccd[3242] (dcc_r_file_timed) 392050 bytes received in 0.364732s, rate 1050kB/s distccd[3242] (dcc_collect_child) cc times: user 0.010000s, system 0.010000s, 159 minflt, 513 majflt distccd[3242] gcc /var/tmp/portage/svgalib-1.9.18-r1/work/svgalib-1.9.18/kernel/svgalib_helper/main.c on localhost failed distccd[3242] job complete distccd[3242] (dcc_preforked_child) worn out distccd[3242] (dcc_exit) exit: code 0; self: 0.050000 user 0.220000 sys; children: 46.620000 user 1.540000 sys distccd[14203] (dcc_log_child_exited) child 3242 exited: exit status 0
cc1: error: unrecognized option `-Wdeclaration-after-statement' what gcc version is that distcc host running
# gcc --version gcc (GCC) 3.3.4 (Debian) Copyright (C) 2003 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
what if you try this on that debian host ? i dont have gcc-3.3.4 installed, but this works with gcc-3.3.3 and gcc-3.4.0: echo 'int main(){}' > test.c gcc -Wdeclaration-after-statement test.c
Here are the results on the debian machine: ~$ echo 'int main(){}' > test.c ~$ gcc -Wdeclaration-after-statement test.c cc1: error: unrecognized option `-Wdeclaration-after-statement' ~$ Compilation succeeds on the gentoo machine.
-Wdeclaration-after-statement is non-standard for gcc-3.3.x ... it is introduced by our branch updates in the gcc-3.3.x ebuilds ... that is why the debian box doesnt support it the flag itself is added by the kernel Makefile ... it detects that the host machine (the gentoo box) supports the flag and thus adds it into CFLAGS for you ... i would just `env FEATURES=-distcc emerge svgalib` and move on