Search Postgresql Archives

Re: PostgreSQL 8.3.8 on AIX5.3 : compilation failed

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

 



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 -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 :
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

  


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux