Hi Laurenz, hi Daniel,
I have always run "gmake distclean" before relaunching a build.
Maybe the32-bit build failed because I have not set and exported the
"OBJECT_MODE" environment variable.
I will try to build PostgreSQL once again with "export OBJECT_MODE=32".
I continued to test a 64-bit build and finally, I found the procedure to
do a 64-bit build of PostgreSQL 8.3.8 on AIX 5.3.
As "root" user :
# export OBJECT_MODE=64
# export CFLAGS="-maix64"
# export LDFLAGS="-maix64 -Wl,-bbigtoc"
# export AR="ar -X64" => this step was missing in my first test
# ./configure
# gmake
All of PostgreSQL successfully made. Ready to install.
As non-root user :
# gmake check
=======================
All 114 tests passed.
=======================
As "root" user:
# gmake install
PostgreSQL installation complete.
I will try this procedure with "export OBJECT_MODE=32" at the beginning
to see if the first error was coming from this variable.
I will tell me my conclusion.
About 32-build versus 64-build on AIX, could you please tell me if
PostgreSQL will be able to use all the benefits of a 64-build or not ?
Thank you for your answer.
Regards,
Alexandra
Albe Laurenz a écrit :
> Alexandra Roy wrote:
>
>> It was a 32-bit build as I didn't have set the "OBJECT_MODE" to 64.
>> I call configure and make using as root user:
>>
>> # ./configure
>> # gmake
>>
>> The releases of "make" and "gcc" are :
>> make-3.80-1
>> gcc-4.2.0-3
>>
>
> Hmmm, I dont get the error if I set OBJECT_MODE to 32 and
> do what you did, but I have PostgreSQL 8.4 here.
>
> config.log and pg_config.h look like yours...
>
>
>> Since my post, I have followed the advice of PostgreSQL 8.4
>> documentation on AIX to do a 64-bit build:
>> http://www.postgresql.org/docs/8.4/static/installation-platform-notes.html#INSTALLATION-NOTES-AIX
>> that is to say I have :
>> - set OBJECT_MODE to 64
>> - pass CC="gcc -maix64" and LDFLAGS="-Wl,-bbigtoc" to configure
>> - execute gmake
>>
>> gmake failed with these errors :
>>
>>
> [...]
>
>> ar crs libpgport.a strlcat.o strlcpy.o getopt_long.o chklocale.o
>> copydir.o dirmod.o exec.o noblock.o path.o pipe.o pgsleep.o
>> pgstrcasecmp.o qsort.o qsort_arg.o sprompt.o thread.o
>> ar: 0707-126 strlcat.o is not valid with the current object file mode.
>> Use the -X option to specify the desired object mode.
>>
>
> You have to export OBJECT_MODE. Setting it is not enough.
>
> Did you 'make clean' first? Otherwise some 64-bit objects might still be around...
>
> Yours,
> Laurenz Albe
>