(unnamed)

text/html

Filename: (unnamed)
Type: text/html
Part: 0
Message: Re: PostgreSQL 8.3.8 on AIX5.3 : compilation failed
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
Hi Laurenz, hi all,<br>
<br>
This is a summary of what I have noticed concerning PostgreSQL 8.3.8
compilation on AIX 5.3 TL9.<br>
<br>
1. To do a successful 64-bit build, specify and execute:<br>
<blockquote><font face="Courier New" size="-1"># export
OBJECT_MODE="64"
  <br>
# export CFLAGS="-maix64"&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; <br>
# export LDFLAGS="-maix64 -Wl,-bbigtoc"
  <br>
# ./configure
  <br>
# gmake <br>
# gmake install </font><br>
</blockquote>
Laurenz, you are right: it is not necessary to specify: <br>
<pre wrap=""># export AR="ar -X64" </pre>
<br>
<br>
2. To do a successful 32-bit build, you must specify:<br>
<blockquote><font face="Courier New" size="-1"># export
OBJECT_MODE="32"
  </font></blockquote>
and use the "<font color="#3333ff">-disable-largefile</font>" option
with configure :<br>
<blockquote><font face="Courier New" size="-1"># ./configure <font
 color="#ff0000">-disable-largefile</font></font><br>
</blockquote>
If I use the "-disable-largefile" option, "configure" indicates at the
end: <br>
<blockquote><font color="#ff0000" face="Courier New" size="-1">configure:
WARNING: option ignored: --enable-largefile</font><br>
</blockquote>
And then, the compilation is successful:<br>
<blockquote><font color="#3333ff" face="Courier New" size="-1">All of
PostgreSQL successfully made. Ready to install.</font><br>
</blockquote>
Without the "-disable-largefile" option, the compilation is still
failing with this error:<br>
<blockquote><font face="Courier New" size="-1">In file included from
psqlscan.c:2385:
  <br>
&nbsp;&nbsp; /usr/include/unistd.h:171: error: conflicting types for 'lseek64'
  <br>
&nbsp;&nbsp; /usr/include/unistd.h:169: error: previous declaration of 'lseek64'
  <br>
&nbsp;&nbsp; was here
  <br>
&nbsp;&nbsp; In file included from /usr/include/unistd.h:744,
  <br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; from psqlscan.c:2385:
  <br>
&nbsp;&nbsp; /usr/include/sys/lockf.h:64: error: conflicting types for 'lockf64'
  <br>
&nbsp;&nbsp; /usr/include/sys/lockf.h:62: error: previous declaration of
  <br>
&nbsp;&nbsp; 'lockf64' was here
  </font><br>
</blockquote>
Does someone have an idea about this ? <br>
Why the "-disable-largefile" option is necessary to do a PostgreSQL
8.3.8 32-build ? <br>
Why the "OBJECT_MODE" exported to 32 is not sufficient ? <br>
<br>
Thank you for your answer.<br>
<br>
Regards,<br>
Alexandra<br>
<br>
<br>
Albe Laurenz a &eacute;crit&nbsp;:
<blockquote
 cite="mid:D960CB61B694CF459DCFB4B0128514C203938023@exadv11.host.magwien.gv.at"
 type="cite">
  <pre wrap="">Alexandra Roy wrote:
  </pre>
  <blockquote type="cite">
    <pre wrap="">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".
    </pre>
  </blockquote>
  <pre wrap=""><!---->
I will look at the 32 bit case again.

  </pre>
  <blockquote type="cite">
    <pre wrap="">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 :
    </pre>
  </blockquote>
  <pre wrap=""><!---->
You don't have to be root for this.

  </pre>
  <blockquote type="cite">
    <pre wrap=""># export OBJECT_MODE=64
# export CFLAGS="-maix64"            
# export LDFLAGS="-maix64 -Wl,-bbigtoc"
# export AR="ar -X64" =&gt; this step was missing in my first test
    </pre>
  </blockquote>
  <pre wrap=""><!---->
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.

  </pre>
  <blockquote type="cite">
    <pre wrap=""># ./configure
# gmake
All of PostgreSQL successfully made. Ready to install.
    </pre>
  </blockquote>
  <pre wrap=""><!---->
I'm glad that you got it to compile.

  </pre>
  <blockquote type="cite">
    <pre wrap="">As non-root user :
# gmake check
=======================
 All 114 tests passed.
=======================

As "root" user:
# gmake install
PostgreSQL installation complete.
    </pre>
  </blockquote>
  <pre wrap=""><!---->
Yours,
Laurenz Albe

  </pre>
</blockquote>
<div class="moz-signature"><font color="grey"><br>
</font>
</div>
</body>
</html>