This is the mail archive of the crossgcc@sourceware.cygnus.com mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more infromation.


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

Re: more Linux --> AIX cross compiler questions


"Tom Williams" <tom.williams@diversifiedsoftware.com> wrote:

> Greetings once again.  I'm getting really close now (I can feel it)!  I'm
> at the point now where the C++ libraries are needed or being built or
> something and Idon't know if I need to build libstdc++ before I build the
> corss compiler or what.
> 
> Here is the current problem:
> make[3]: Entering directory
> `/mnt/disk2/build/gcc-2.95/objdir/powerpc-ibm-aix4.3.1/libiberty'
> make[3]: *** No targets.  Stop.

 It leaves the 'libiberty' subdir unbuilt, if the preliminary checks fail.
The famous "Cannot make executables" was given earlier and the job stopped
there...

> make[2]: Leaving directory
> `/mnt/disk2/build/gcc-2.95/objdir/powerpc-ibm-aix4.3.1/libstdc++'
> make[1]: *** [all-target-libstdc++] Error 2

 Now it continues with building 'libio', but checks if 'libiberty.a' was
built when building 'libstdc++.a'...

> Do I need to do something special to build libiberty?

 You should be able to produce AIX4.3 executables, without any unresolved
symbols or any other troubles. Just look at the 'libiberty/config.log' to
see what problems you now have... These will lead you to the possible bugs
and their fixes, like :

 - cannot find any symbols in the C-library -- forgot to add the '-rpath xxxx' 
   into your 'gcc/specs' or something else ?  Just add it...

 The best way is to try with some test program in the 'gcc' subdir, like a
'hello.c' or the included 'enquire.c' (very demanding...), and edit the 'specs'
until the toolset works... 

 The best way for the AIX4.3-target case would be to resolve, WHAT extra it 
does need in the reality, when working with a cross-compiler... And 
then contribute that info to the egcs/gcc group. The macro LINK_SPEC could 
wrapped with

  #ifndef CROSS_COMPILE
  #define LINK_SPEC \
   " <native_spec> "
  #else
  #define LINK_SPEC \
   " <cross-tool_spec> "
  #endif

as the default in the config/rs6000/aix43.h, if only the <cross-tool_spec>
would be known...

 Otherwise than Ian Lance Taylor wrote earlier, the 'powerpc-aix4.3-ld --help' 
will give the option '-rpath-link' as one of the 'supported'... But doesn't it 
work, as Ian wrote ? This should be the right option for linking, when a 
'-rpath' or '-rpath-link' is needed for the shared libs to be found at the 
'wrong' non-native places with a cross-toolset. But is the '-rpath-link' 
working only with ELF-targets and the AIX's XCOFF-tools don't use it...

Cheers, Kai

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


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