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

Bug 275126

Summary: dev-embedded/sdcc-2.8.0 fails to build with gcc 4.4
Product: Gentoo Linux Reporter: Thomas Capricelli <orzel>
Component: Current packagesAssignee: Embedded Team (OBSOLETE) <dev-embedded+disabled>
Severity: normal CC: esigra
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 249226    

Description Thomas Capricelli 2009-06-23 00:52:31 UTC
This is the important part of the log file :

make[1]: Entering directory `/tmp/portage/dev-embedded/sdcc-2.8.0/work/sdcc/src'
gawk -f ./version.awk ../ChangeLog > version.h
bison -y -d -v -o SDCCy.c SDCC.y
x86_64-pc-linux-gnu-gcc -c -march=native -O3 -pipe -msse3 -Wall -DINDEXLIB -I. -I. -I./../../support/Util -Wall -march=native -O3 -pipe -msse3 -o obj/aslex.o ../asxxsrc/aslex.c
x86_64-pc-linux-gnu-g++ -march=native -O3 -pipe -msse3 -Wall -I. -I.. -I.. -I../sim.src -I../gui.src  -c -o cmdlex.o
x86_64-pc-linux-gnu-gcc -c -march=native -O3 -pipe -msse3 -Wall -DINDEXLIB -I. -I. -I./../../support/Util -Wall -march=native -O3 -pipe -msse3 -o obj/asnoice.o ../asxxsrc/asnoice.c
x86_64-pc-linux-gnu-gcc -c -march=native -O3 -pipe -msse3 -Wall -DINDEXLIB -I. -I. -I./../../support/Util -Wall -march=native -O3 -pipe -msse3 -o obj/dbuf.o ../../support/Util/dbuf.c
flex  -t SDCC.lex >SDCClex.c In member function ‘int yyFlexLexer::yyinput()’: error: ‘EOF’ was not declared in this scope
make[2]: *** [cmdlex.o] Error 1
make[2]: Leaving directory `/tmp/portage/dev-embedded/sdcc-2.8.0/work/sdcc/sim/ucsim/cmd.src'
make[2]: Entering directory `/tmp/portage/dev-embedded/sdcc-2.8.0/work/sdcc/sim/ucsim/sim.src'

Reproducible: Always

Portage 2.2_rc33 (default/linux/amd64/2008.0/developer, gcc-4.4.0, glibc-2.10.1-r0, 2.6.30 x86_64)   
System uname: Linux-2.6.30-x86_64-AMD_Athlon-tm-_64_X2_Dual_Core_Processor_4200+-with-gentoo-2.0.1   
Timestamp of tree: Mon, 22 Jun 2009 21:30:20 +0000                                                   
distcc 3.1 x86_64-pc-linux-gnu [disabled]                                                            
ccache version 2.4 [disabled]                                                                        
app-shells/bash:     4.0_p24                                                                         
dev-java/java-config: 2.1.8-r1                                                                       
dev-lang/python:     2.6.2-r1                                                                        
dev-python/pycrypto: 2.0.1-r8                                                                        
dev-util/ccache:     2.4-r8                                                                          
dev-util/cmake:      2.6.4                                                                           
sys-apps/baselayout: 2.0.1                                                                           
sys-apps/openrc:     0.4.3-r3                                                                        
sys-apps/sandbox:    2.0                                                                             
sys-devel/autoconf:  2.13, 2.63-r1                                                                   
sys-devel/automake:  1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.2, 1.11                                 
sys-devel/binutils:  2.19.1-r1                                                                       
sys-devel/gcc-config: 1.4.1                                                                          
sys-devel/libtool:   2.2.6a                                                                          
virtual/os-headers:  2.6.29                                                                          
ACCEPT_KEYWORDS="amd64 ~amd64"
Comment 1 Rafał Mużyło 2009-06-23 02:27:26 UTC
My personal guess (from NEWS):
* Changes in version 2.3a, 2006-09-13:
** Except for LALR(1) parsers in C with POSIX Yacc emulation enabled (with `-y',
  `--yacc', or `%yacc'), Bison no longer generates #define statements for
  associating token numbers with token names.  Removing the #define statements
  helps to sanitize the global namespace during preprocessing, but POSIX Yacc
  requires them.  Bison still generates an enum for token names in all cases.
Comment 2 Thomas Capricelli 2009-06-23 16:30:48 UTC
You can see in my copy/paste that bison is actually called with this option '-y'. (i dont know if this is a "LALR" though),.... does it matter?

Comment 3 Thomas Capricelli 2009-06-30 21:48:52 UTC
today dev-embedded/sdcc-2.8.0 failed with another error : 

SDCCset.c:321: note: initialized from here
x86_64-pc-linux-gnu-gcc -march=native -O3 -pipe -msse3 -Wall -march=native -O3 -pipe -msse3 -Wall -march=native -O3 -pipe -msse3  -I. -I.. -I./../support/Util -I. -I. -c SDCClabel.c -o SDCClabel.o
x86_64-pc-linux-gnu-gcc -march=native -O3 -pipe -msse3 -Wall -march=native -O3 -pipe -msse3 -Wall -march=native -O3 -pipe -msse3  -I. -I.. -I./../support/Util -I. -I. -c SDCCBBlock.c -o SDCCBBlock.o
x86_64-pc-linux-gnu-g++ -march=native -O3 -pipe -msse3 -Wall -I. -I.. -I.. -I../cmd.src -I../sim.src -I../gui.src  -c -o shc08.o
x86_64-pc-linux-gnu-g++ -march=native -O3 -pipe -msse3 -Wall -Wl,-O1  -o shc08 glob.o inst.o simhc08.o hc08.o shc08.o -L.. -lsim -lucsimutil -lguiucsim -lcmd -lsim -lnsl
/usr/lib/gcc/x86_64-pc-linux-gnu/4.4.0/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lcmd
collect2: ld returned 1 exit status
make[2]: *** [shc08] Error 1
Comment 4 Samuli Suominen (RETIRED) gentoo-dev 2009-08-10 08:12:00 UTC
+  10 Aug 2009; Samuli Suominen <> sdcc-2.8.0.ebuild,
+  +files/sdcc-2.8.0-gcc44.patch:
+  Fix building with GCC 4.4+ wrt #275126.

The ebuild is still bogus; prestrips binaries and scanelf prints out warnings about malformed ar -archives