When emerging nmap using distcc, it fails to build. It works fine not using distcc. Note that this error even occurs when '-j1' is used as a make option, or no option is passed at all. The only way to make it compile cleanly is to take "distcc" out of the FEATURES variable. x86_64-pc-linux-gnu-g++ -c -pipe -O2 -Wall -Ilibpcap-possiblymodified -Inbase -Insock/include -DHAVE_CONFIG_H -DNMAP_VERSION=\"3.75\" -DNMAP_NAME=\"nmap\" -DNMAP_URL=\"http://www.insecure.org/nmap/\" -DNMAP_PLATFORM=\"x86_64-pc-linux-gnu\" -DNMAPDATADIR=\"/usr/share/nmap\" -Ilibpcap-possiblymodified main.cc -o main.o distcc[31425] ERROR: compile /root/.ccache/main.tmp.prodigy.31420.ii on savant failed In file included from /usr/lib/gcc-lib/x86_64-pc-linux-gnu/3.3.4/include/g++-v3/vector:71, from service_scan.h:109, from nmap.h:417, from main.cc:102: /usr/lib/gcc-lib/x86_64-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_vector.h: In constructor `std::_Vector_base<_Tp, _Alloc>::_Vector_base(size_t, const typename std::_Vector_alloc_base<_Tp, _Alloc, std::_Alloc_traits<_Tp,_Allocator>::_S_instanceless>::allocator_type&)': /usr/lib/gcc-lib/x86_64-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_vector.h:156: error: `_M_start' undeclared (first use this function) /usr/lib/gcc-lib/x86_64-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_vector.h:156: error: (Each undeclared identifier is reported only once for each function it appears in.) /usr/lib/gcc-lib/x86_64-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_vector.h:156: error: there are no arguments to `_M_allocate' that depend on a template parameter, so a declaration of `_M_allocate' must be available /usr/lib/gcc-lib/x86_64-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_vector.h:156: error: (if you use `-fpermissive', G++ will accept your code, but allowing the use of an undeclared name is deprecated) /usr/lib/gcc-lib/x86_64-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_vector.h:157: error: `_M_finish' undeclared (first use this function) /usr/lib/gcc-lib/x86_64-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_vector.h:158: error: `_M_end_of_storage' undeclared (first use this function) /usr/lib/gcc-lib/x86_64-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_vector.h: In destructor `std::_Vector_base<_Tp, _Alloc>::~_Vector_base()': /usr/lib/gcc-lib/x86_64-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_vector.h:162: error: `_M_start' undeclared (first use this function) /usr/lib/gcc-lib/x86_64-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_vector.h:162: error: `_M_end_of_storage' undeclared (first use this function) /usr/lib/gcc-lib/x86_64-pc-linux-gnu/3.3.4/include/g++-v3/bits/stl_vector.h:162: error: there are no arguments to `_M_deallocate' that depend on a template parameter, so a declaration of `_M_deallocate' must be available make: *** [main.o] Error 1 Reproducible: Always Steps to Reproduce: Gentoo Base System version 1.4.16 Portage 2.0.51-r15 (default-linux/amd64/2004.3, gcc-3.3.4, glibc-2.3.4.20041102-r0, 2.6.9-gentoo-r12 x86_64) ================================================================= System uname: 2.6.9-gentoo-r12 x86_64 AMD Opteron(tm) Processor 246 Python: dev-lang/python-2.3.4-r1 [2.3.4 (#1, Feb 8 2005, 11:02:53)] distcc 2.18.3 x86_64-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled] ccache version 2.3 [enabled] dev-lang/python: 2.3.4-r1 sys-devel/autoconf: 2.13, 2.59-r6 sys-devel/automake: 1.5, 1.8.5-r3, 1.6.3, 1.7.9-r1, 1.4_p6, 1.9.4 sys-devel/binutils: 2.15.92.0.2-r1 sys-devel/libtool: 1.5.10-r4 virtual/os-headers: 2.6.8.1-r2 ACCEPT_KEYWORDS="amd64" AUTOCLEAN="yes" CFLAGS="-pipe -O2" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.2/share/config /usr/kde/3.3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/lib/mozilla/defaults/pref /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/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d" CXXFLAGS="-pipe -O2" DISTDIR="/usr/portage/distfiles" FEATURES="autoaddcvs autoconfig ccache distcc distlocks sandbox" GENTOO_MIRRORS="ftp://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ ftp://mirror.pudas.net/gentoo http://gentoo.ccccom.com ftp://gentoo.ccccom.com" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="amd64 X acpi alsa arts berkdb bitmap-fonts cdr crypt cups esd f77 fam flac font-server foomaticdb fortran gdbm gif gnome gpm gstreamer gtk imagemagick imlib ipv6 java jp2 jpeg kde ldap libwww lzw lzw-tiff mad mikmod motif mozilla multilib ncurses nls oggvorbis opengl oss pam pdflib perl png ppds python qt readline sdl slang ssl tcltk tcpd tetex tiff truetype truetype-fonts type1-fonts usb userlocales xml xml2 xmms xpm xrandr xv zlib" Unset: ASFLAGS, CBUILD, CTARGET, LANG, LC_ALL, LDFLAGS
Could you please try the newer ebuilds - 3.80, or even better 3.81?
Tried 3.81 and it still fails under distcc. I have to export FEATURES="" before emerging or it bails with the same error as before.
I have no idea whether it will help, but it might be worth a try: upgrade gcc to a 3.4.x version.
It must be something on my end, because it only fails when the process is initiated on a particular machine in the cluster. The rest of them compile it just fine, for some reason.
OK, I'm closing this as NEEDINFO, since there is nothing that I can do with what we know at this point. If you figure out what is wrong, and it doesn't turn out to be a misconfiguration issue, please add a comment in this bug and reopen it if necessary.