This is the mail archive of the crossgcc@sources.redhat.com mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: make error for powerpc-ibm-aix


윤형수 wrote:

> The following is procedure of build gcc
> ---------------------------------------------------------------------------
> 
> 1. setting Compile Environment
> [root@linux2 binutils-2.15]# export TARGET=powerpc-ibm-aix5.1.0.0
> [root@linux2 binutils-2.15]# export PREFIX1=/home/docho/cross
> [root@linux2 binutils-2.15]# export PATH=${PREFIX}/bin:${PATH}

 Installing the target C library belongs to this phase. How else the GCC
build could fix the target headers for GCC and check what the target libraries
have or have not?

> 2. configure
> [linux2:/home/docho/cross/build-gccbootstrap] ../gcc-3.4.3/configure \
> 
>>--target=${TARGET} --prefix=${PREFIX1} \
>>--with-local-prefix=${PREFIX1}/${TARGET} --with-headers=${PREFIX1}/${TARGET}\

 The '--with-headers=<something>' means that you really have the target headers
copied into this location ! Ok, using it in this case just as the previous
option should be vain, here the value given to it is even totally wrong. But
what we are to understand the thoughts of the high GCC priests, or any other
weird theology? Quoting the "GCC Internals" manual for 3.4 :

  A cross compiled GCC runs fixincludes on the header files in
  '$(tooldir)/include'. (If the cross compilation header files
  need to be fixed, they must be installed before GCC is built.
  If the cross compilation header files are already suitable
  for GCC, nothing special need be done).

The GCC manuals tell something and the GCC build does something else but still
everything is just as it should be and has always been such. Sigh...

>>--enable-languages=c --disable-shared --disable-threads --with-newlib

 Why not C++ and other languages required?  AIX 5.1 doesn't use newlib and
therefore the last option is badly wrong !

> 3. make all-gcc
> .....................................
> /home/docho/cross/build-gccbootstrap/gcc/xgcc
> -B/home/docho/cross/build-gccbootstrap/gcc/
> -B/home/docho/cross/powerpc-ibm-aix5.1.0.0/bin/
> -B/home/docho/cross/powerpc-ibm-aix5.1.0.0/lib/
> -isystem /home/docho/cross/powerpc-ibm-aix5.1.0.0/include
> -isystem /home/docho/cross/powerpc-ibm-aix5.1.0.0/sys-include

 These four last options tell where your AIX5.1 target binutils and C library
SHOULD be preinstalled !

> In file included from ../../gcc-3.4.3/gcc/libgcc2.c:41:
> ../../gcc-3.4.3/gcc/tsystem.h:79:19: stdio.h: no such file or directory
> ../../gcc-3.4.3/gcc/tsystem.h:82:23: sys/types.h: no such file or directory
> ../../gcc-3.4.3/gcc/tsystem.h:93:20: stdlib.h: no such file or directory

 The AIX5.1 headers should include these...

> In file included from ../../gcc-3.4.3/gcc/tsystem.h:100,
>                  from ../../gcc-3.4.3/gcc/libgcc2.c:41:
> /home/docho/cross/powerpc-ibm-aix5.1.0.0/include/time.h:5:25: linux/types.h:
> no such file or directory

 What on earth you have done? How the 'time.h' in the target headers could
try to #include the 'linux/types.h' ?

> In file included from ../../gcc-3.4.3/gcc/tsystem.h:100,
>                  from ../../gcc-3.4.3/gcc/libgcc2.c:41:
> 
> /home/docho/cross/powerpc-ibm-aix5.1.0.0/include/time.h:10: error: parse error before "time_t"
> /home/docho/cross/powerpc-ibm-aix5.1.0.0/include/time.h:12: error: parse error before '}' token
> /home/docho/cross/powerpc-ibm-aix5.1.0.0/include/time.h:89: error: parse error before "time_t"

 If one should put diesel into the tank and one puts 95 octane, a really big
bang boom can be the result... Or 'fairytales' about what happened when one
innovative engineer once put Fairy into a dish washer machine will be told...

 Here you can see what happens when one uses Linux headers instead of AIX
headers... Once tried using Fairy (British hand-wash liquid) in a dish-washer
just like the technical director from the near steel factory and we both are
not allowed by our wives to wash any dishes any more... How sad indeed ! What
was your goal in this fairytale?  That you would not be asked to build any
GCCs any more? :-)


------
Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]