>>> emerge (1 of 1) dev-libs/ace-5.4-r2 to / >>> md5 files ;-) ace-5.4.6.ebuild >>> md5 files ;-) ace-5.4-r2.ebuild >>> md5 files ;-) ace-5.4.3.ebuild >>> md5 files ;-) files/digest-ace-5.4-r2 >>> md5 files ;-) files/digest-ace-5.4.3 >>> md5 files ;-) files/digest-ace-5.4.6 >>> md5 src_uri ;-) ACE-5.4.tar.bz2 >>> Unpacking source... >>> Unpacking ACE-5.4.tar.bz2 to /var/tmp/portage/ace-5.4-r2/work tar: Read 4096 bytes from - >>> Source unpacked. make[1]: Entering directory `/var/tmp/portage/ace-5.4-r2/work/ACE_wrappers/ace' Makefile: /var/tmp/portage/ace-5.4-r2/work/ACE_wrappers/ace/Makefile.ace g++ -O2 -fomit-frame-pointer -falign-functions=4 -falign-jumps=4 -frename-registers -funit-at-a-time -march=k6-2 -mtune=k6-3 -pipe -W -Wall -Wpointer-arith -pipe -O2 -fomit-frame-pointer -falign-functions=4 -falign-jumps=4 -frename-registers -funit-at-a-time -march=k6-2 -mtune=k6-3 -pipe -g -D_REENTRANT -DACE_HAS_AIO_CALLS -D_GNU_SOURCE -I/var/tmp/portage/ace-5.4-r2/work/ACE_wrappers -DACE_HAS_EXCEPTIONS -D__ACE_INLINE__ -DACE_BUILD_DLL -DACE_OS_BUILD_DLL -DACE_AS_STATIC_LIBS -c -o .obj/ARGV.o ARGV.cpp In file included from /var/tmp/portage/ace-5.4-r2/work/ACE_wrappers/ace/Unbounded_Queue.h:286, from /var/tmp/portage/ace-5.4-r2/work/ACE_wrappers/ace/ARGV.h:24, from ARGV.cpp:6: /var/tmp/portage/ace-5.4-r2/work/ACE_wrappers/ace/Unbounded_Queue.cpp: In member function `void ACE_Unbounded_Queue<T>::delete_nodes()': /var/tmp/portage/ace-5.4-r2/work/ACE_wrappers/ace/Unbounded_Queue.cpp:133: error: expected class-name before '(' token /var/tmp/portage/ace-5.4-r2/work/ACE_wrappers/ace/Unbounded_Queue.cpp: In destructor `ACE_Unbounded_Queue<T>::~ACE_Unbounded_Queue()': /var/tmp/portage/ace-5.4-r2/work/ACE_wrappers/ace/Unbounded_Queue.cpp:153: error: expected class-name before '(' token /var/tmp/portage/ace-5.4-r2/work/ACE_wrappers/ace/Unbounded_Queue.cpp: In member function `int ACE_Unbounded_Queue<T>::dequeue_head(T&)': /var/tmp/portage/ace-5.4-r2/work/ACE_wrappers/ace/Unbounded_Queue.cpp:223: error: expected class-name before '(' token make[1]: *** [.obj/ARGV.o] Error 1 make[1]: Leaving directory `/var/tmp/portage/ace-5.4-r2/work/ACE_wrappers/ace' make: *** [all] Error 2 !!! ERROR: dev-libs/ace-5.4-r2 failed. !!! Function src_compile, Line 28, Exitcode 2 !!! (no error message) !!! If you need support, post the topmost build error, NOT this status message. Portage 2.0.53 (hardened/x86/2.6, gcc-3.4.4, glibc-2.3.5-r2, 2.6.13-rsbac-rsbac i586) ================================================================= System uname: 2.6.13-rsbac-rsbac i586 AMD-K6(tm) 3D processor Gentoo Base System version 1.6.13 dev-lang/python: 2.3.5, 2.4.2 sys-apps/sandbox: 1.2.12 sys-devel/autoconf: 2.13, 2.59-r6 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r1 sys-devel/binutils: 2.16.1 sys-devel/libtool: 1.5.20 virtual/os-headers: 2.6.11-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CBUILD="i586-pc-linux-gnu" CFLAGS="-O2 -fomit-frame-pointer -falign-functions=4 -falign-jumps=4 -frename-registers -funit-at-a-time -march=k6-2 -mtune=k6-3 -pipe" CHOST="i586-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/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="-O2 -fomit-frame-pointer -falign-functions=4 -falign-jumps=4 -frename-registers -funit-at-a-time -march=k6-2 -mtune=k6-3 -pipe" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig distlocks sandbox sfperms strict" GENTOO_MIRRORS="ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo ftp://ftp.tiscali.nl/pub/mirror/gentoo ftp://gentoo.inode.at/source http://sunsite.cnlab-switch.ch/ftp/mirror/gentoo http://www.mirror.ac.uk/sites/www.ibiblio.org/gentoo http://ftp.tugraz.at/pub/mirror/gentoo http://www.ibiblio.org/pub/Linux/distributions/gentoo" LINGUAS="de" PKGDIR="/usr/portage//packages/x86/" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage/" SYNC="rsync://rsync.il.gentoo.org/gentoo-portage" USE="3dnow acl acpi apache2 bash-completion berkdb bzip2 caps crypt dlloader expat flash gd gnutls hardened hardenedphp idn imap jpeg ldap libwww mhash ming mmx ncurses nptl pam pcre perl pic png postgres python readline recode samba sasl slang ssl threads truetype udev unicode userlocales x86 zlib linguas_de userland_GNU kernel_linux elibc_glibc" Unset: ASFLAGS, CTARGET, LANG, LC_ALL, LDFLAGS, MAKEOPTS, PORTDIR_OVERLAY
This bug appears to only be detected when compiling with gcc-3.4.x (which is why more people haven't said anything about it I suspect). The relevant code looks something like this: ACE_DES_FREE_TEMPLATE (temp, this->allocator_->free, ACE_Node, <T>); The macro looks like this: # define ACE_DES_FREE_TEMPLATE(POINTER,DEALLOCATOR,T_CLASS,T_PARAMETER) \ do { \ if (POINTER) \ { \ (POINTER)->~T_CLASS(); \ DEALLOCATOR(POINTER); \ } \ } \ while (0) The problem is with the invocation of the destructor. 3.4 wants it to have the template parameter: "~T_CLASS<T>();". This can be fixed by changing the relevant parts of the source so that they look like this: ACE_DES_FREE_TEMPLATE (temp, this->allocator_->free, ACE_Node<T>, <T>); Perhaps this issue has already been fixed in more recent versions of ACE.
#1's solution pushed the build along further, but it's still failing: g++ -march=pentium4 -O3 -pipe -W -Wall -Wpointer-arith -pipe -march=pentium4 -O3 -pipe -g -D_REENTRANT -DACE_HAS_AIO_CALLS -D_GNU_SOURCE -I/var/tmp/portage/ace-5.4-r2/work/ACE_wrappers -DACE_HAS_EXCEPTIONS -D__ACE_INLINE__ -DACE_BUILD_DLL -DACE_OS_BUILD_DLL -DACE_AS_STATIC_LIBS -c -o .obj/ACE.o ACE.cpp g++ -march=pentium4 -O3 -pipe -W -Wall -Wpointer-arith -pipe -march=pentium4 -O3 -pipe -g -D_REENTRANT -DACE_HAS_AIO_CALLS -D_GNU_SOURCE -I/var/tmp/portage/ace-5.4-r2/work/ACE_wrappers -DACE_HAS_EXCEPTIONS -D__ACE_INLINE__ -DACE_BUILD_DLL -DACE_OS_BUILD_DLL -DACE_AS_STATIC_LIBS -c -o .obj/Active_Map_Manager.o Active_Map_Manager.cpp In file included from /var/tmp/portage/ace-5.4-r2/work/ACE_wrappers/ace/Map_Manager.h:703, from /var/tmp/portage/ace-5.4-r2/work/ACE_wrappers/ace/Active_Map_Manager_T.h:18, from /var/tmp/portage/ace-5.4-r2/work/ACE_wrappers/ace/Active_Map_Manager.h:109, from Active_Map_Manager.cpp:3: /var/tmp/portage/ace-5.4-r2/work/ACE_wrappers/ace/Map_Manager.cpp: In member function `void ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>::free_search_structure()': /var/tmp/portage/ace-5.4-r2/work/ACE_wrappers/ace/Map_Manager.cpp:590: error: expected class-name before '(' token make[1]: *** [.obj/Active_Map_Manager.o] Error 1 make[1]: *** Waiting for unfinished jobs.... make[1]: Leaving directory `/var/tmp/portage/ace-5.4-r2/work/ACE_wrappers/ace' make: *** [all] Error 2
*** Bug 132094 has been marked as a duplicate of this bug. ***
Have you tries any of the newer ace versions in portage?
The dev-libs/ace-5.4.6 in ~x86 builds fine for me and works with my applications. What reason has it not been marked "stable" on x86 yet?
None, fixed in cvs. Thanks for your help.