Re: Building gcc 4.9.2 on AIX 7.1

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Jun 11, 2023 at 12:27 PM Tom Kacvinsky via Gcc-help <
gcc-help@xxxxxxxxxxx> wrote:

> HI,
>
> For some reason my follow-up hasn't made it through.
>
> On Sun, Jun 11, 2023 at 11:27 AM Tom Kacvinsky <tkacvins@xxxxxxxxx> wrote:
>
> <snip>
>
>
> > Those aren't binutils linker warnings.  Those are coming from the system
> > linker.  Which probably means you are using the system assembler, too.
> Or
> > maybe even the odd case where you're using binutils for the assembler but
> > the system linker.
> >
> > Can you try with using binutils for the assembler and linker?  I am
> > assuming you either have an older version of GCC for building the newer
> > version of it, or perhaps you have the Sun Pro compilers.  In any case,
> you
> > could use whichever bootstrap compiler you have to build binutils, and
> then
> > put they binutils in PATH.  The GCC configure script should then chose
> > those for building.
>
>
> I missed that you're on AIX.  So either you're using an older version of
> GCC to bootstrap, or IBM's xlc/xlC compilers to bootstrap.
>
> Here is a thought I had up re-thinking this.  This might be an
> architecture problem.  Which version of the POWER chips are you using?
> YOu might have to force the GCC configuration process to use -march to
> specify the right processor.  But as far as I know, the configure script
> should be smart enough to figure that out.
>
> It's been about ten years since I used the xlc/xlC compilers, so I am
> not sure how one would select the architecture they want.
>

Hi Tom.

Our sys-admin team is upgrading AIX 7.1 to 7.2. This broke gcc (an issue
with IBM delivering non-ansi-standard header files). So my first step is an
attempt to bootstrap gcc 4.9.2 (or later) on a non-upgraded (7.1) system.
This would be using our existing install of gcc.

$ gcc --version
gcc (GCC) 4.9.2

Here are the CPU details:

$ prtconf
System Model: IBM,9040-MR9
Machine Serial Number: XXXXXXX
Processor Type: PowerPC_POWER9
Processor Implementation Mode: POWER 8
Processor Version: PV_8_Compat
Number Of Processors: 4
Processor Clock Speed: 2850 MHz
CPU Type: 64-bit
Kernel Type: 64-bit
LPAR Info: 12 XXXXXXXX
Memory Size: 31744 MB
Good Memory Size: 31744 MB
Platform Firmware level: VM930_145
Firmware Version: IBM,FW930.50 (VM930_145)
Console Login: enable
Auto Restart: true
Full Core: false
NX Crypto Acceleration: Capable and Enabled
<snip>

Details on "ld" and "as" as per configure:

$ ./configure
checking build system type... powerpc-ibm-aix7.1.0.0
<snip>
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
<snip>
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
<snip>
checking for as... as
checking for dlltool... no
checking for ld... ld
<snip>
checking for cc... cc
checking for c++... c++
checking for gcc... gcc
<snip>
checking for as... no
checking for as... as
<snip>
checking for ld... no
checking for ld... ld
<snip>
checking where to find the target ar... host tool
checking where to find the target as... host tool
checking where to find the target cc... just compiled
checking where to find the target c++... just compiled
checking where to find the target c++ for libstdc++... just compiled
checking where to find the target dlltool... host tool
checking where to find the target gcc... just compiled
checking where to find the target gcj... just compiled
<snip>
checking where to find the target ld... host tool
<snip>

And "ld" and "as" I see at the command line:

$ which ld
/usr/bin/ld

$ file /usr/bin/ld
/usr/bin/ld: symbolic link to /usr/ccs/bin/ld

$ file /usr/ccs/bin/ld
/usr/ccs/bin/ld: executable (RISC System/6000 V3.1) or obj module

$ which as
/usr/bin/as

$ file /usr/bin/as
/usr/bin/as: symbolic link to /usr/ccs/bin/as

$ file /usr/ccs/bin/as
/usr/ccs/bin/as: executable (RISC System/6000 V3.1) or obj module

Because gcc 4.9.2 is broken on our AIX 7.2 I am interested (though not as a
first step) in how to boostrap gcc using native C (xlc) compiler. Alas, I
am still in the process of learning what options can be sent to configure
to direct it to use xlc.

I just saw Kai's -v suggestion. I'll try that and reply with the details.

Cheers, -Randy




[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux