Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 13453

Summary: kde-base/arts-1.0.5a.ebuild fails to compile with -foptimize-sibling-calls flag
Product: Gentoo Linux Reporter: Herton R. Krzesinski <herton>
Component: [OLD] KDEAssignee: Gentoo KDE team <kde>
Status: RESOLVED FIXED    
Severity: enhancement CC: ennui, seemant
Priority: High    
Version: 1.4_rc1   
Hardware: x86   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description Herton R. Krzesinski 2003-01-07 17:10:41 UTC
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
Comment 1 Herton R. Krzesinski 2003-01-07 17:10:41 UTC
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.
Comment 2 Hannes Mehnert (RETIRED) gentoo-dev 2003-01-08 16:25:15 UTC
arts-1.0.5a just merged fine with  CFLAGS="$CFLAGS -foptimize-sibling-calls". 
please post your 'emerge info'. thanks. 
Comment 3 Herton R. Krzesinski 2003-01-08 17:58:54 UTC
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. 
Comment 4 Herton R. Krzesinski 2003-01-08 18:05:55 UTC
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. 
Comment 5 Herton R. Krzesinski 2003-01-08 18:10:46 UTC
Sorry about comment #3, I think lines breaked with [Enter] resolved the bad 
looking. 
 
Herton. 
 
Comment 6 Hannes Mehnert (RETIRED) gentoo-dev 2003-01-09 01:37:39 UTC
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. 
Comment 7 Herton R. Krzesinski 2003-01-09 14:42:33 UTC
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.... 
Comment 8 Hannes Mehnert (RETIRED) gentoo-dev 2003-01-09 15:02:05 UTC
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. 
Comment 9 Herton R. Krzesinski 2003-01-11 02:08:18 UTC
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. 
Comment 10 Dan Armak (RETIRED) gentoo-dev 2003-01-31 17:08:50 UTC
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. 
Comment 11 Nick Fish 2003-02-24 12:48:32 UTC
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
Comment 12 Hannes Mehnert (RETIRED) gentoo-dev 2003-02-28 06:27:35 UTC
ok, now foptimize-sibling-calls is also filtered in arts-1.1.0.ebuild. 
thanks.