If I use the -foptimize-sibling-calls flag (make.conf), I get the following error output in the emerge process of arts-1.0.5a: o-check-new -ftemplate-depth-99 -o gslffttest gslffttest.o dummy.o libgsl.la g++ -DGSL_WANT_GLIB_WRAPPER -DGSL_WANT_ARTS_THREADS -DNDEBUG -DNO_DEBUG -O2 -O3 -mcpu=athlon-tbird -march=athlon-tbird -fforce-addr -foptimize-sibling-calls -mmmx -m3dnow -pipe -fno-exceptions -fno-check-new -ftemplate-depth-99 -o .libs/gslffttest gslffttest.o dummy.o ./.libs/libgsl.a /var/tmp/portage/arts-1.0.5a/work/arts-1.0.5a/mcop/.libs/libmcop.so -lstdc++ -L/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.1 -L/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.1/../../../../i686-pc-linux-gnu/lib -L/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.1/../../.. -L/usr/i686-pc-linux-gnu/bin -L/usr/i686-pc-linux-gnu/lib -lresolv -ldl /usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.1/libstdc++.so -lm -lc -lgcc_s -Wl,--rpath -Wl,/usr/kde/3/lib -Wl,--rpath -Wl,/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.1 creating gslffttest make[3]: Leaving directory `/var/tmp/portage/arts-1.0.5a/work/arts-1.0.5a/flow/gsl' make[3]: Entering directory `/var/tmp/portage/arts-1.0.5a/work/arts-1.0.5a/flow'../mcopidl/mcopidl -t ../flow/artsflow.idl make[3]: *** [artsflow.h] Falha de segmenta
If I use the -foptimize-sibling-calls flag (make.conf), I get the following error output in the emerge process of arts-1.0.5a: o-check-new -ftemplate-depth-99 -o gslffttest gslffttest.o dummy.o libgsl.la g++ -DGSL_WANT_GLIB_WRAPPER -DGSL_WANT_ARTS_THREADS -DNDEBUG -DNO_DEBUG -O2 -O3 -mcpu=athlon-tbird -march=athlon-tbird -fforce-addr -foptimize-sibling-calls -mmmx -m3dnow -pipe -fno-exceptions -fno-check-new -ftemplate-depth-99 -o .libs/gslffttest gslffttest.o dummy.o ./.libs/libgsl.a /var/tmp/portage/arts-1.0.5a/work/arts-1.0.5a/mcop/.libs/libmcop.so -lstdc++ -L/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.1 -L/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.1/../../../../i686-pc-linux-gnu/lib -L/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.1/../../.. -L/usr/i686-pc-linux-gnu/bin -L/usr/i686-pc-linux-gnu/lib -lresolv -ldl /usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.1/libstdc++.so -lm -lc -lgcc_s -Wl,--rpath -Wl,/usr/kde/3/lib -Wl,--rpath -Wl,/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2.1 creating gslffttest make[3]: Leaving directory `/var/tmp/portage/arts-1.0.5a/work/arts-1.0.5a/flow/gsl' make[3]: Entering directory `/var/tmp/portage/arts-1.0.5a/work/arts-1.0.5a/flow'../mcopidl/mcopidl -t ../flow/artsflow.idl make[3]: *** [artsflow.h] Falha de segmentação make[3]: Leaving directory `/var/tmp/portage/arts-1.0.5a/work/arts-1.0.5a/flow' make[2]: ** [all-recursive] Erro 1 make[2]: Leaving directory `/var/tmp/portage/arts-1.0.5a/work/arts-1.0.5a/flow' make[1]: ** [all-recursive] Erro 1 make[1]: Leaving directory `/var/tmp/portage/arts-1.0.5a/work/arts-1.0.5a' make: ** [all] Erro 2 !!! ERROR: kde-base/arts-1.0.5a failed. !!! Function kde_src_compile, Line -8823, Exitcode 2 !!! died running emake, kde_src_compile:make The error "Falha de Segmentação" means "Segmentation Fault". After this I emerged without -foptimize-sibling-calls and the compilation worked fine. The enhancement would be filter -foptimize-sibling-calls.
arts-1.0.5a just merged fine with CFLAGS="$CFLAGS -foptimize-sibling-calls". please post your 'emerge info'. thanks.
Here is my emerge info: Portage 2.0.46-r4 (default-x86-1.4, gcc-3.2.1, glibc-2.3.1-r2) ================================================================= System uname: 2.4.19-gentoo-r10 i686 AMD Athlon(tm) Processor USE="x86 gnome berkdb bonobo 3dnow aalib alsa apm arts avi cdr cjk crypt cups dga directfb dvd encode esd fbcon flash gd gdbm ggi ggz gif gphoto2 gpm gtk doc gtk2 gtkhtml guile imap imlib ipv6 java jikes jpeg kde kerberos lcms ldap leim libg++ evo gb libgda libwww maildir mbox mikmod mmx motif mozilla mpeg mule nas ncurses nls odbc oggvorbis opengl oss pam pdflib perl pic plotutils png pnp postgres python qt qtmt quicktime readline ruby samba sasl scanner sdl slang slp snmp socks5 spell ssl svga tcltk tcpd tetex tiff truetype wmf X xml xml2 xmms xv zeo zlib" ARCH="x86" COMPILER="gcc3" CHOST="i686-pc-linux-gnu" CFLAGS="-O3 -mcpu=athlon-tbird -march=athlon-tbird -fforce-addr -fomit-frame-pointer -foptimize-sibling-calls -mmmx -m3dnow -pipe" CXXFLAGS="-O3 -mcpu=athlon-tbird -march=athlon-tbird -fforce-addr -fomit-frame-pointer -foptimize-sibling-calls -mmmx -m3dnow -pipe" ACCEPT_KEYWORDS="x86" CONFIG_PROTECT="/etc /var/qmail/control /usr/share/config /usr/kde/2/share/config /usr/kde/3/share/config /usr/X11R6/lib/X11/xkb:/usr/share/config:/usr/kde/3/share/config" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" MAKEOPTS="-j2" JDK_HOME="/opt/blackdown-jdk-1.3.1" JAVA_HOME="/opt/blackdown-jdk-1.3.1" AUTOCLEAN="yes" SYNC="rsync://rsync.gentoo.org/gentoo-portage" GENTOO_MIRRORS="http://www.ibiblio.org/pub/Linux/distributions/gentoo" Herton.
Here is the info again, I want now that this be displayed correctly, I don't know why it displayed bad in last post: Portage 2.0.46-r4 (default-x86-1.4, gcc-3.2.1, glibc-2.3.1-r2) ================================================================= System uname: 2.4.19-gentoo-r10 i686 AMD Athlon(tm) Processor USE="x86 gnome berkdb bonobo 3dnow aalib alsa apm arts avi cdr cjk crypt cups dga directfb dvd encode esd fbcon flash gd gdbm ggi ggz gif gphoto2 gpm gtk doc gtk2 gtkhtml guile imap imlib ipv6 java jikes jpeg kde kerberos lcms ldap leim libg++ evo gb libgda libwww maildir mbox mikmod mmx motif mozilla mpeg mule nas ncurses nls odbc oggvorbis opengl oss pam pdflib perl pic plotutils png pnp postgres python qt qtmt quicktime readline ruby samba sasl scanner sdl slang slp snmp socks5 spell ssl svga tcltk tcpd tetex tiff truetype wmf X xml xml2 xmms xv zeo zlib" ARCH="x86" COMPILER="gcc3" CHOST="i686-pc-linux-gnu" CFLAGS="-O3 -mcpu=athlon-tbird -march=athlon-tbird -fforce-addr -fomit-frame-pointer -foptimize-sibling-calls -mmmx -m3dnow -pipe" CXXFLAGS="-O3 -mcpu=athlon-tbird -march=athlon-tbird -fforce-addr -fomit-frame-pointer -foptimize-sibling-calls -mmmx -m3dnow -pipe" ACCEPT_KEYWORDS="x86" CONFIG_PROTECT="/etc /var/qmail/control /usr/share/config /usr/kde/2/share/config /usr/kde/3/share/config /usr/X11R6/lib/X11/xkb:/usr/share/config:/usr/kde/3/share/config" CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d" MAKEOPTS="-j2" JDK_HOME="/opt/blackdown-jdk-1.3.1" JAVA_HOME="/opt/blackdown-jdk-1.3.1" AUTOCLEAN="yes" SYNC="rsync://rsync.gentoo.org/gentoo-portage" GENTOO_MIRRORS="http://www.ibiblio.org/pub/Linux/distributions/gentoo" Herton.
Sorry about comment #3, I think lines breaked with [Enter] resolved the bad looking. Herton.
maybe -fforce-addr together with -foptimize-sibling-calls breaks arts-1.0.5a? or -foptimize-sibling-calls together with march=athlon-tbird. my C/CXXFLAGS are -O3 -march=pentium3 -pipe -fomit-frame-pointer -mmmx -msse and arts compiled even with -foptimize-sibling-calls.
This is strange, because now I tested with only the -foptimize-sibling-calls flag set (CFLAGS="-foptimize-sibling-calls") and got the same error in compilation. If someone else could test the same thing, preferably someone with an athlon thunderbird....
arts also compiled with CFLAGS=CXXFLAGS=-O3 -march=pentium3 -pipe -fomit-frame-pointer -mmmx -msse -foptimize-sibling-calls -fforce-addr so, please try with -march=i586 -mcpu=i586 instead of athlon-tbird in your C/CXXFLAGS.
Like I said in comment #6 I removed *all* flags, the only flag used in compiling was the -foptimize-sibling-calls. Now I tried with your sugestion, using i586 with mcpu and march, but I still got the same error. This could be something with my system, I don't know, I installed Gentoo 2 months ago without problems, and arts-1.0.5a is the only component with this problem that occurs always when the -foptimize-sibling-calls is set, same error on the same place. Really weird, because it works in your system.
I can confirm this. I'm getting the same segfault when I add -foptimize-sibling-calls to CFLAGS. So I'll add a filter for this flag in the ebuild, at least until we can look into it more deeply.
Seeing this same problem in arts-1.1.0.ebuild (tracked it down to the same CFLAG myself, didn't find this bug report til I was about ready to post a patch to filter the flag). Occurred with make.conf: CFLAGS="-foptimize-sibling-calls" CXXFLAGS="${CFLAGS}" $ gcc-config --get-current-profile i686-pc-linux-gnu-3.2.2 $ cat /proc/cpuinfo processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 8 model name : Pentium III (Coppermine) stepping : 10 cpu MHz : 1002.290 cache size : 32 KB fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 2 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 mmx fxsr sse bogomips : 1998.84
ok, now foptimize-sibling-calls is also filtered in arts-1.1.0.ebuild. thanks.