Hi Laurenz, hi all,
This is a summary of what I have noticed concerning PostgreSQL 8.3.8
compilation on AIX 5.3 TL9.
1. To do a successful 64-bit build, specify and execute:
# export
OBJECT_MODE="64"
# export CFLAGS="-maix64"
# export LDFLAGS="-maix64 -Wl,-bbigtoc"
# ./configure
# gmake
# gmake install
Laurenz, you are right: it is not necessary to specify:
# export AR="ar -X64"
2. To do a successful 32-bit build, you must specify:
# export
OBJECT_MODE="32"
and use the "-disable-largefile" option
with configure :
# ./configure <font
color="#ff0000">-disable-largefile
If I use the "-disable-largefile" option, "configure" indicates at the
end:
configure:
WARNING: option ignored: --enable-largefile
And then, the compilation is successful:
All of
PostgreSQL successfully made. Ready to install.
Without the "-disable-largefile" option, the compilation is still
failing with this error:
In file included from
psqlscan.c:2385:
/usr/include/unistd.h:171: error: conflicting types for 'lseek64'
/usr/include/unistd.h:169: error: previous declaration of 'lseek64'
was here
In file included from /usr/include/unistd.h:744,
from
psqlscan.c:2385:
/usr/include/sys/lockf.h:64: error: conflicting types for 'lockf64'
/usr/include/sys/lockf.h:62: error: previous declaration of
'lockf64' was here
Does someone have an idea about this ?
Why the "-disable-largefile" option is necessary to do a PostgreSQL
8.3.8 32-build ?
Why the "OBJECT_MODE" exported to 32 is not sufficient ?
Thank you for your answer.
Regards,
Alexandra
Albe Laurenz a écrit :
<blockquote
cite="mid:D960CB61B694CF459DCFB4B0128514C203938023@exadv11.host.magwien.gv.at"
type="cite">
Alexandra Roy wrote:
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 will look at the 32 bit case again.
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 :
You don't have to be root for this.
# export OBJECT_MODE=64
# export CFLAGS="-maix64"
# export LDFLAGS="-maix64 -Wl,-bbigtoc"
# export AR="ar -X64" => this step was missing in my first test
This should not be necessary - if you look at the man page of "ar"
you will see that the default value of the -X flag is derived
from OBJECT_MODE.
# ./configure
# gmake
All of PostgreSQL successfully made. Ready to install.
I'm glad that you got it to compile.
As non-root user :
# gmake check
=======================
All 114 tests passed.
=======================
As "root" user:
# gmake install
PostgreSQL installation complete.
Yours,
Laurenz Albe