Thread: AIX5.2 compile for PG 8.0.2. -- solution

AIX5.2 compile for PG 8.0.2. -- solution

From
"Mohan, Ross"
Date:
Solution:

I discovered gcc does NOT properly accept/respect "OBJECT_MODE=64"
and tries to assemble 32-bit executables. Bzzzzt....!


export CFLAGS='-maix64' was the flag that fixed it...

-----Original Message-----
From: pgsql-ports-owner@postgresql.org [mailto:pgsql-ports-owner@postgresql.org] On Behalf Of Mohan, Ross
Sent: Saturday, May 07, 2005 7:19 PM
To: pgsql-ports@postgresql.org
Subject: Re: [PORTS] AIX5.2 compile for PG 8.0.2. -- novice installer


( Correction for last mail: )

Strike the GNUMake comment below. I was referring to GCC 3.4.3

-----Original Message-----
From: Mohan, Ross
Sent: Saturday, May 07, 2005 7:09 PM
To: 'Tom Lane'; Christopher Browne
Cc: pgsql-ports@postgresql.org
Subject: RE: [PORTS] AIX5.2 compile for PG 8.0.2. -- novice installer


Status as of now:

- Can do without flex/bison (because I am not pulling from CVS,ie)
- Can ( theoretically ) do without readline and zlib via the
      --without flags, but agree that no practical implementation
      would want to do this
--GNU Make 3.4.3  _seems_ to be working fine (my SA finds anything
      above 3.3.x "provocative"; I demurred.)

-- Can build 32-bit executables -- but I don't want these.

-- Can NOT build the 64-bit XCOFF executables I do want. (see
      the PS below for specifics )


Have tried various combinations of:


OBJECT_MODE=64
-Xlinker -b64 -Xlinker -bbibtoc
--enable-aix64

If "GNU Make 3.80" will solve this, I'll fight that battle. But
I suspect the problem is my limited understanding of 64bitAIX
enviroments and possibly a bad OS build environment.



Thanks for any thoughts on this,


--Ross  "--without-clue --enable-flail" Mohan



p.s.  some details

#######################################################################################
here is the error snippet from CONFIG.LOG:

configure:2008: checking for C compiler default output
configure:2011: gcc   -Xlinker -b64 -Xlinker -bbigtoc conftest.c  >&5
Assembler:
/tmp//ccTtf8Lf.s: line 9: Only .llong should be used for relocatable expressions.
configure:2014: $? = 1
configure: failed program was:
#line 1985 "configure" #######################################################################################
Here is gcc version:

$gcc --version
gcc (GCC) 3.4.3 #######################################################################################
Here is configure command line:

./configure --enable-aix64 --prefix=/u01/app/postgres/app --exec-prefix=/u01/app/postgres/app
#######################################################################################
Here are CC/LD flags:

$set | grep FLAGS
LDFLAGS='-Xlinker -b64 -Xlinker -bbigtoc'
#######################################################################################






-----Original Message-----
From: pgsql-ports-owner@postgresql.org [mailto:pgsql-ports-owner@postgresql.org] On Behalf Of Tom Lane
Sent: Saturday, May 07, 2005 12:47 AM
To: Christopher Browne
Cc: pgsql-ports@postgresql.org
Subject: Re: [PORTS] AIX5.2 compile for PG 8.0.2. -- novice installer


Christopher Browne <cbbrowne@acm.org> writes:
> It may be handy for you to know what sorts of things we have found
> useful to compile and install in addition to PostgreSQL on AIX:

> 1. GNU readline 5.0
> 2. zlib 1.2.1
> 3. GNU Make 3.8.0
> 4. m4 1.4
> 5. GNU flex 2.5.4
> 6. GNU Bison 1.875

You definitely do need GNU make if you are going to compile Postgres, and you want to have readline and zlib if you
wantto build fully functional psql and pg_dump/pg_restore (respectively). 

In theory you should not need m4, flex, or bison to build Postgres from a distribution tarball (though you likely will
needthem to build from a CVS pull).  A tarball should include all the derived files that you'd otherwise need these
programsto build.  If you've found otherwise please let us know ... 

            regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 9: the planner will ignore your desire to choose an index scan if your
      joining column's datatypes do not match

---------------------------(end of broadcast)---------------------------
TIP 2: you can get off all lists at once with the unregister command
    (send "unregister YourEmailAddressHere" to majordomo@postgresql.org)