Problem with compiling Fiasco L4 on Suse

Stefan Kögel stefan-wieland.koegel at stud.tu-ilmenau.de
Wed Jun 25 12:54:13 CEST 2008


Actually you are right. Suse 11 ships with gcc4.3. I installed gcc4.1 
> manually. Gcc4.3 generated the same error and I thought I could fix this 
> by using an earlier version of gcc. The building manual states that 
> "version 3.3, 3.4, 4.0, 4.1 or 4.2" of gcc is needed.


4.3 works as well nowadays.
 

> > Unfortunately "make oldconfig" in ~/my-l4-build does not fix the 
> > problem. Still the same error. Should I consider checking out the module 
> > again?
>   

That should not make a difference. Can you go to ~/my-l4-build, do
"make V=1 oldconfig" and show the output? Normally, after doing
oldconfig, the paths in ~/my-l4-build/Makeconf.bid.local should be
updated to the current compiler. Hopefully it can be seen from the
output why this might not work.


Adam
-- Adam adam at os.inf.tu-dresden.de Lackorzynski 
http://os.inf.tu-dresden.de/~adam/

Here it is...
All I can see is that "GCCLIB=/usr/lib/gcc/i586-suse-linux/4.3/libgcc.a" 
is set to the right path.
But I still get the "g++: /usr/lib/gcc/i486-linux-gnu/4.2.3/crtbeginS.o: 
No such file or directory" errors. Strange...


stefan at linux-2gsj:~/Desktop/Fiasco/my-l4-build> make V=1 oldconfig
PWD=/home/stefan/Desktop/Fiasco/svn/tudos/l4 make -C 
/home/stefan/Desktop/Fiasco/svn/tudos/l4 
O=/home/stefan/Desktop/Fiasco/my-l4-build oldconfig
make[1]: Entering directory `/home/stefan/Desktop/Fiasco/svn/tudos/l4'
install -d /home/stefan/Desktop/Fiasco/my-l4-build/include/l4/
DROPSCONF_TITLE='DROPS Configuration Tool' 
DROPSCONF_DEFCONFIG='./mk/defconfig/config.x86' 
DROPSCONF_CONFIG_IN='./mk/config.in' 
DROPSCONF_CONFIG='/home/stefan/Desktop/Fiasco/my-l4-build/.Makeconf.bid' 
DROPSCONF_CONFIG_H='/home/stefan/Desktop/Fiasco/my-l4-build/include/l4/bid_config.h' 
DROPSCONF_MACRO='CONFIG_H_INCLUDED' 
DROPSCONF_HELPFILE='./mk/config.help' DROPSCONF_UNDEF='' 
DROPSCONF_LXDIALOG='/home/stefan/Desktop/Fiasco/my-l4-build/tool/config/lxdialog/lxdialog' 
./tool/config/Configure -d
#
# Using defaults found in 
/home/stefan/Desktop/Fiasco/my-l4-build/.Makeconf.bid
#
*
* Target Architecture
*
Target Architecture (x86, arm, amd64) [x86]
  defined BUILD_ARCH_x86
 CPU type (CPU) [586]
 ABI (L4.Fiasco, Linux) [L4.Fiasco]
  defined BUILD_ABI_l4v2
*
* Paths and Directories
*
DROPS_STDDIR (DROPS_STDDIR) [/home/drops]
DROPS_INSTDIR (DROPS_INSTDIR) [$(DROPS_STDDIR)]
*
* Verboseness and Messages
*
Verbose dependency building (DEPEND_VERBOSE_SWITCH) [N/y/?]
Verbose compilation and building (VERBOSE_SWITCH) [Y/n/?]
Short messages for compilation (SHOWMESSAGES) [Y/n/?]
Colored build-steps (BID_COLORED_PHASES) [Y/n/?]
*
* Compilers and Tools
*
Use special C-Compilers (BIDc_USE_SPECIAL_CC) [N/y/?]
*
* Tools
*
YACC (YACC) [byacc]
LEX (LEX) [flex]
CTAGS (CTAGS) [ctags]
ETAGS (ETAGS) [etags]
*
* Options
*
System has ld.so (highly recommended if so) (HAVE_LDSO) [Y/n/?]
Automatically determine internal gcc preprocessor names 
(INT_CPP_NAME_SWITCH) [Y/n/?]
Automatically determine internal ld names (INT_LD_NAME_SWITCH) [Y/n/?]
Strip binaries on install (BID_STRIP_PROGS) [N/y/?]
Generate stabs-compatible debug Infos with gcc-3+ (BID_GSTAB_SW) [Y/n/?]
GCC: Omit Frame-pointers (BID_GCC_OMIT_FP) [N/y/?]
Generate Map-files for binaries (BID_GENERATE_MAPFILE) [N/y/?]
Build doc directories (BID_BUILD_DOC) [Y/n/?]
*
* Advanced
*
Use system-call entry code in the KIP (absolute) (L4_CALL_SYSCALLS) [Y/n/?]
Use hierarchical task system (EXPERIMENTAL) (USE_TASKLIB) [N/y/?]
Enable RELEASE flag (RELEASE_MODE) [N/y/?]
Do not build anything outside l4 directory (BID_BUILD_L4DIR_ONLY) [N/y/?]
Configuration label (CONFIG_LABEL) [__none__]
*
* Paths
*
DDE-2.4 include path (DDE_INCDIR) (DDE_INCDIR) 
[$(OBJ_BASE)/include/$(ARCH)/l4/dde_linux 
$(DROPS_STDDIR)/include/$(ARCH)/l4/dde_linux]
DDE-2.6 include path (DDE26_INCDIR) (DDE26_INCDIR) 
[$(OBJ_BASE)/include/$(ARCH)/l4/dde_linux26 
$(DROPS_STDDIR)/include/$(ARCH)/l4/dde_linux26 
$(OBJ_BASE)/include/l4/dde_linux26 $(DROPS_STDDIR)/include/l4/dde_linux26]
SDL include path (SDL_INCDIR) (SDL_INCDIR) [$(OBJ_BASE)/include/l4/sdl 
$(DROPS_STDDIR)/include/l4/sdl]

*** End of configuration.

make[2]: Entering directory `/home/stefan/Desktop/Fiasco/svn/tudos/l4'
sed -e "s/\(^[^= ]*=\)'\([^']*\)'/\1\2/" \
                </home/stefan/Desktop/Fiasco/my-l4-build/.Makeconf.bid 
 >/home/stefan/Desktop/Fiasco/my-l4-build/.Makeconf.bid.converted
make DROPSCONF_CONFIG_MK_POST_HOOK
make[3]: Entering directory `/home/stefan/Desktop/Fiasco/svn/tudos/l4'
make HOST_SYSTEM=linux libgendep
make[4]: Entering directory `/home/stefan/Desktop/Fiasco/svn/tudos/l4'
if [ ! -r tool/gendep/Makefile ]; then  \
                    echo "=== l4/tool/gendep missing! ===";     \
                    exit 1;                                     \
                  fi
PWD=/home/stefan/Desktop/Fiasco/svn/tudos/l4/tool/gendep make -C tool/gendep
make[5]: Entering directory 
`/home/stefan/Desktop/Fiasco/svn/tudos/l4/tool/gendep'
make[5]: Für das Ziel »all« ist nichts zu tun.
make[5]: Leaving directory 
`/home/stefan/Desktop/Fiasco/svn/tudos/l4/tool/gendep'
make[4]: Leaving directory `/home/stefan/Desktop/Fiasco/svn/tudos/l4'
make Makeconf.bid.local-helper || \
                (rm -f 
/home/stefan/Desktop/Fiasco/my-l4-build/.Makeconf.bid.converted 
/home/stefan/Desktop/Fiasco/my-l4-build/Makeconf.bid.local 
/home/stefan/Desktop/Fiasco/my-l4-build/Makeconf.bid.local.indep; false)
make[4]: Entering directory `/home/stefan/Desktop/Fiasco/svn/tudos/l4'
echo BUILD_SYSTEMS="x86_586 x86_586-l4v2" >> 
/home/stefan/Desktop/Fiasco/my-l4-build/.Makeconf.bid.converted
echo GCCDIR=/usr/lib/gcc/i586-suse-linux/4.3 
 >>/home/stefan/Desktop/Fiasco/my-l4-build/.Makeconf.bid.converted;  
echo GCCLIB=/usr/lib/gcc/i586-suse-linux/4.3/libgcc.a 
 >>/home/stefan/Desktop/Fiasco/my-l4-build/.Makeconf.bid.converted;  
echo GCCLIB_EH=/usr/lib/gcc/i586-suse-linux/4.3/libgcc_eh.a 
 >>/home/stefan/Desktop/Fiasco/my-l4-build/.Makeconf.bid.converted;  
echo GCCVERSION=4 
 >>/home/stefan/Desktop/Fiasco/my-l4-build/.Makeconf.bid.converted;  
echo GCCMAJORVERSION=4 
 >>/home/stefan/Desktop/Fiasco/my-l4-build/.Makeconf.bid.converted;  
echo GCCMINORVERSION=3 
 >>/home/stefan/Desktop/Fiasco/my-l4-build/.Makeconf.bid.converted;  
echo GCCSUBVERSION=3 
 >>/home/stefan/Desktop/Fiasco/my-l4-build/.Makeconf.bid.converted;  
echo GCCNOSTACKPROTOPT=-fno-stack-protector 
 >>/home/stefan/Desktop/Fiasco/my-l4-build/.Makeconf.bid.converted;
echo 
BID_LIBGENDEP=/home/stefan/Desktop/Fiasco/my-l4-build/tool/gendep/libgendep.so 
 >>/home/stefan/Desktop/Fiasco/my-l4-build/.Makeconf.bid.converted;
echo 'BUILD_PIC += $(BUILD_LOADER_PICS)' 
 >>/home/stefan/Desktop/Fiasco/my-l4-build/.Makeconf.bid.converted
echo "HOST_SYSTEM=linux" 
 >>/home/stefan/Desktop/Fiasco/my-l4-build/.Makeconf.bid.converted
echo "COLOR_TERMINAL=y" 
 >>/home/stefan/Desktop/Fiasco/my-l4-build/.Makeconf.bid.converted
echo "LD_HAS_HASH_STYLE_OPTION=y" 
 >>/home/stefan/Desktop/Fiasco/my-l4-build/.Makeconf.bid.converted
# we need to call make again, because HOST_SYSTEM (set above) must be
# evaluated for LD_PRELOAD to be set, which we need in the following
make Makeconf.bid.local-internal-names
make[5]: Entering directory `/home/stefan/Desktop/Fiasco/svn/tudos/l4'
set -e; X="/home/stefan/Desktop/Fiasco/my-l4-build/tmp.$$$RANDOM.c" ; 
echo 'int main(void){}'>$X ; \
                rm -f $X.out ; 
LD_PRELOAD=/home/stefan/Desktop/Fiasco/my-l4-build/tool/gendep/libgendep.so 
GENDEP_SOURCE=$X \
                GENDEP_OUTPUT=$X.out gcc -m32 -c $X -o $X.o; \
                test -e $X.out; echo INT_CPP_NAME=`cat $X.out` \
                        
 >>/home/stefan/Desktop/Fiasco/my-l4-build/.Makeconf.bid.converted; \
                rm -f $X $X.{o,out};
set -e; X="/home/stefan/Desktop/Fiasco/my-l4-build/tmp.$$$RANDOM.cc" ; 
echo 'int main(void){}'>$X; \
                rm -f $X.out; 
LD_PRELOAD=/home/stefan/Desktop/Fiasco/my-l4-build/tool/gendep/libgendep.so 
GENDEP_SOURCE=$X \
                GENDEP_OUTPUT=$X.out g++ -m32 -c $X -o $X.o; \
                test -e $X.out; echo INT_CXX_NAME=`cat $X.out` \
                        
 >>/home/stefan/Desktop/Fiasco/my-l4-build/.Makeconf.bid.converted; \
                rm -f $X $X.{o,out};
set -e; echo INT_LD_NAME=$(ld 2>&1 | perl -p -e 's,^(.+/)?(.+):.+,$2,') 
 >> /home/stefan/Desktop/Fiasco/my-l4-build/.Makeconf.bid.converted
make[5]: Leaving directory `/home/stefan/Desktop/Fiasco/svn/tudos/l4'
sort </home/stefan/Desktop/Fiasco/my-l4-build/.Makeconf.bid.converted 
 >/home/stefan/Desktop/Fiasco/my-l4-build/Makeconf.bid.local.tmp
echo -e "# Automatically generated. Don't edit\n" 
 >/home/stefan/Desktop/Fiasco/my-l4-build/Makeconf.bid.local.indep
grep -e ^BID_GENERATE_MAPFILE -e ^DEPEND_VERBOSE_SWITCH -e 
^DEPEND_VERBOSE -e ^VERBOSE_SWITCH -e ^SHOWMESSAGES -e 
^BID_COLORED_PHASES -e ^HAVE_LDSO -e ^INT_CPP_NAME_SWITCH -e 
^BID_LIBGENDEP -e ^INT_CPP_.*_NAME -e ^INT_CXX_.*_NAME -e ^VERBOSE -e 
^BID_STRIP_PROGS -e ^INT_LD_NAME_SWITCH -e ^INT_LD_.*_NAME \
                
</home/stefan/Desktop/Fiasco/my-l4-build/Makeconf.bid.local.tmp 
 >>/home/stefan/Desktop/Fiasco/my-l4-build/Makeconf.bid.local.indep
echo -e "# Automatically generated. Don't edit\n" 
 >/home/stefan/Desktop/Fiasco/my-l4-build/Makeconf.bid.local.tmp2
grep -v -e ^$ -e ^# -e ^BID_GENERATE_MAPFILE -e ^DEPEND_VERBOSE_SWITCH 
-e ^DEPEND_VERBOSE -e ^VERBOSE_SWITCH -e ^SHOWMESSAGES -e 
^BID_COLORED_PHASES -e ^HAVE_LDSO -e ^INT_CPP_NAME_SWITCH -e 
^BID_LIBGENDEP -e ^INT_CPP_.*_NAME -e ^INT_CXX_.*_NAME -e ^VERBOSE -e 
^BID_STRIP_PROGS -e ^INT_LD_NAME_SWITCH -e ^INT_LD_.*_NAME \
                
</home/stefan/Desktop/Fiasco/my-l4-build/Makeconf.bid.local.tmp 
 >>/home/stefan/Desktop/Fiasco/my-l4-build/Makeconf.bid.local.tmp2
echo -e 'include 
/home/stefan/Desktop/Fiasco/my-l4-build/Makeconf.bid.local.indep' 
 >>/home/stefan/Desktop/Fiasco/my-l4-build/Makeconf.bid.local.tmp2
if [ -e "/home/stefan/Desktop/Fiasco/my-l4-build/Makeconf.bid.local" ]; 
then                        \
                    diff --brief 
/home/stefan/Desktop/Fiasco/my-l4-build/Makeconf.bid.local 
/home/stefan/Desktop/Fiasco/my-l4-build/Makeconf.bid.local.tmp2 || \
                      mv 
/home/stefan/Desktop/Fiasco/my-l4-build/Makeconf.bid.local.tmp2 
/home/stefan/Desktop/Fiasco/my-l4-build/Makeconf.bid.local;           \
                  
else                                                       \
                    mv 
/home/stefan/Desktop/Fiasco/my-l4-build/Makeconf.bid.local.tmp2 
/home/stefan/Desktop/Fiasco/my-l4-build/Makeconf.bid.local;             \
                  fi
rm -f /home/stefan/Desktop/Fiasco/my-l4-build/Makeconf.bid.local.tmp 
/home/stefan/Desktop/Fiasco/my-l4-build/Makeconf.bid.local.tmp2
make[4]: Leaving directory `/home/stefan/Desktop/Fiasco/svn/tudos/l4'
ln -snf /home/stefan/Desktop/Fiasco/svn/tudos/l4 
/home/stefan/Desktop/Fiasco/my-l4-build/source
make[3]: Leaving directory `/home/stefan/Desktop/Fiasco/svn/tudos/l4'
make[2]: Leaving directory `/home/stefan/Desktop/Fiasco/svn/tudos/l4'
make[2]: Entering directory `/home/stefan/Desktop/Fiasco/svn/tudos/l4'
make[2]: 
»/home/stefan/Desktop/Fiasco/my-l4-build/.Makeconf.bid.converted« ist 
bereits aktualisiert.
make[2]: Leaving directory `/home/stefan/Desktop/Fiasco/svn/tudos/l4'
make[1]: Leaving directory `/home/stefan/Desktop/Fiasco/svn/tudos/l4'

Kind Regards,
Stefan




More information about the l4-hackers mailing list