Thread: compiling postgres with Visual Age compiler on OpenPower5 / Linux
Has anyone tried to compile postgres with Visual Age compiler on OpenPower5 (IBM-ese for linux only PowerPC based server) either 32 or 64 bit ? We got it to build fine on both Suse and RHAS, but have had no luck with VAC. I have not researched any deeper,but currently it fails with .[hannu@power postgresql-8.0.3]$ CC=/opt/ibmcmp/vac/7.0/bin/xlc ./configure ..A.. checking for int timezone... yes checking types of arguments for accept()... configure: error: could not determine argument types Our "supported platforms" page does not show compiler, perhaps it should be there as a separate column, not as remark for just some platforms. -- Hannu Krosing <hannu@skype.net>
On P, 2005-05-29 at 17:19 +0300, Hannu Krosing wrote: > Has anyone tried to compile postgres with Visual Age compiler on > OpenPower5 (IBM-ese for linux only PowerPC based server) either 32 or 64 > bit ? > > We got it to build fine on both Suse and RHAS, but have had no luck with > VAC. That is we were able to compile it using GCC, but not VAC > > I have not researched any deeper,but currently it fails with > > .[hannu@power postgresql-8.0.3]$ > CC=/opt/ibmcmp/vac/7.0/bin/xlc ./configure > ..A.. > checking for int timezone... yes > checking types of arguments for accept()... configure: error: could not > determine argument types > > > > Our "supported platforms" page does not show compiler, perhaps it should > be there as a separate column, not as remark for just some platforms. > -- Hannu Krosing <hannu@skype.net>
Hannu Krosing <hannu@skype.net> writes: > I have not researched any deeper,but currently it fails with > checking types of arguments for accept()... configure: error: could not > determine argument types So look at config.log and see what's going on. regards, tom lane
Re: compiling postgres with Visual Age compiler on OpenPower5 / Linux
From
"Zeugswetter Andreas DAZ SD"
Date:
> I have not researched any deeper,but currently it fails with > > .[hannu@power postgresql-8.0.3]$ > CC=/opt/ibmcmp/vac/7.0/bin/xlc ./configure > ..A.. > checking for int timezone... yes > checking types of arguments for accept()... configure: error: > could not determine argument types The odds are very high, that it rather depends on the system header file version, or the order of inclusion (e.g. stdio.h before config.h). Would need to see the snippet of configure output though. IIRC there was a fix for this or a similar case, has this been reverted ? Andreas
On P, 2005-05-29 at 11:26 -0400, Tom Lane wrote: > Hannu Krosing <hannu@skype.net> writes: > > I have not researched any deeper,but currently it fails with > > > checking types of arguments for accept()... configure: error: could not > > determine argument types > > So look at config.log and see what's going on. the following is repeated several times: ------8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<-- configure:11574: /opt/ibmcmp/vac/7.0/bin/xlc -c -O -D_GNU_SOURCE conftest.c >&5 "configure", line 11556.21: 1506-166 (S) Definition of function PASCAL requires parentheses. "configure", line 11556.28: 1506-276 (S) Syntax error: possible missing '{'? configure:11577: $? = 1 configure: failed program was: #line 11549 "configure" #include "confdefs.h" #ifdef HAVE_SYS_TYPES_H #include <sys/types.h> #endif #ifdef HAVE_SYS_SOCKET_H #include <sys/socket.h> #endif extern unsigned int PASCAL accept (unsigned int, void *, unsigned int *); #ifdef F77_DUMMY_MAIN # ifdef __cplusplus extern "C" # endif int F77_DUMMY_MAIN() { return 1; } #endif int main () { ; return 0; } ------8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<-- and then end looks like this ------8<--------8<--------8<--------8<--------8<--------8<--------8<--------8<-- #define HAVE_STRUCT_SOCKADDR_STORAGE_SS_FAMILY 1 #define HAVE_STRUCT_ADDRINFO 1 #define HAVE_STRUCT_OPTION 1 #define HAVE_INT_TIMEZONE configure: exit 1 ------8<--------8<--------8<-------8<--------8<---------8<-------8<---------8<-- -- Hannu Krosing <hannu@skype.net>
On E, 2005-05-30 at 12:21 +0300, Hannu Krosing wrote: > On P, 2005-05-29 at 11:26 -0400, Tom Lane wrote: > > Hannu Krosing <hannu@skype.net> writes: > > > I have not researched any deeper,but currently it fails with > > > > > checking types of arguments for accept()... configure: error: could not > > > determine argument types > > > > So look at config.log and see what's going on. > it needs this: extern int accept (int __fd, __SOCKADDR_ARG __addr, socklen_t *__restrict __addr_len); how does one add yet another set of arguments for accept() to configure ? -- Hannu Krosing <hannu@tm.ee>
Hannu Krosing wrote: > it needs this: > > extern int accept (int __fd, __SOCKADDR_ARG __addr, > socklen_t *__restrict __addr_len); > > how does one add yet another set of arguments for accept() to > configure ? One patches the file config/ac_func_accept_argtypes.m4. Presumably, you need to add another choice to the loop for ac_cv_func_accept_arg2. -- Peter Eisentraut http://developer.postgresql.org/~petere/