Réf. : Re: R?f. : Re: v8 on AIX5 .2

From: frederic(dot)germaneau(at)bull(dot)net
To: pgsql-general(at)postgresql(dot)org
Subject: Réf. : Re: R?f. : Re: v8 on AIX5 .2
Date: 2004-09-27 09:57:26
Message-ID: OF6C016E01.2982CCAC-ONC1256F1C.002F5F50@frec.bull.fr
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general


Thanks for your help,

I haven't tested with cc_r but with VisualAge C from IBM , and "configure
CC=/usr/vac/bin/cc --enable-thread-safety" works fine.

But when compiling, link edition fails, "ld" doesn't find threads entries
(like pthreads_mutex_lock...).

Each compilation that have failed was launched without any option for
multithreading.

I have tried to launch it with "-lpthreads" option, and that works fine.

When investigating, I have found that AIX5.2 (and 5.3) has a new library
named libthread.a (not present on AIX5.1 where compilation OK) . Maybe this
new threads library introduced for sunOs compatibility disturbs
"configure"?

With "configure CC=/usr/vac/bin/cc CFLAGS="-lpthreads"
--enable-thread-safety", compilation is OK.

I have launched "gmake check" and 1 of the 96 tests fails:
$ more
/postgres_util/postgresql-8.0.0beta2/src/test/regress/regression.diffs
*** ./expected/geometry.out Fri Oct 31 21:07:07 2003
--- ./results/geometry.out Mon Sep 27 11:45:58 2004
***************
*** 117,123 ****
| (5.1,34.5) | [(1,2),(3,4)] | (3,4)
| (-5,-12) | [(1,2),(3,4)] | (1,2)
| (10,10) | [(1,2),(3,4)] | (3,4)
! | (0,0) | [(0,0),(6,6)] | (-0,0)
| (-10,0) | [(0,0),(6,6)] | (0,0)
| (-3,4) | [(0,0),(6,6)] | (0.5,0.5)
| (5.1,34.5) | [(0,0),(6,6)] | (6,6)
--- 117,123 ----
| (5.1,34.5) | [(1,2),(3,4)] | (3,4)
| (-5,-12) | [(1,2),(3,4)] | (1,2)
| (10,10) | [(1,2),(3,4)] | (3,4)
! | (0,0) | [(0,0),(6,6)] | (0,0)
| (-10,0) | [(0,0),(6,6)] | (0,0)
| (-3,4) | [(0,0),(6,6)] | (0.5,0.5)
| (5.1,34.5) | [(0,0),(6,6)] | (6,6)

======================================================================

But I think that's not bad.

Do you think so?

Frédéric

Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>@postgresql.org sur 09/26/2004
03:10:29 AM

Envoyé par : pgsql-general-owner(at)postgresql(dot)org

Pour : Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
cc : frederic(dot)germaneau(at)bull(dot)net, pgsql-general(at)postgresql(dot)org
Objet : Re: R?f. : Re: [GENERAL] v8 on AIX5.2

Tom Lane wrote:
> frederic(dot)germaneau(at)bull(dot)net writes:
> > Contents of config.log is:
> > configure:16063: checking for the pthreads library -lpthreads
> > configure:16101: gcc -o conftest -O2 -fno-strict-aliasing
conftest.c
> > -lpth
> > reads -lz -lreadline -lPW -lgen -lld -lnsl -ldl -lm >&5
> > In file included from conftest.c:117:
> > /usr/include/pthread.h:556: parse error before `*'
> > /usr/include/pthread.h:559: parse error before `*'
> > /usr/include/pthread.h:563: parse error before `*'
>
> This looks like your version of pthread.h depends on some other system
> header having been included first; but there's not nearly enough
> information here to guess which one(s) it needs.

I wonder if this is the problem:

# More AIX lossage: must compile with cc_r
AC_CHECK_PROG(PTHREAD_CC, cc_r, cc_r, ${CC})

This code is from acx_pthread.m4. I figured any OS that required a
separate compiler for threading was really broken but this might be
needed still for AIX. I hesitated to propogate this into our code
because it would require a new $(CC) for all thread builds and I didn't
want to go that far unless I had to.

If you set CC=cc_r, does it help?

--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania
19073

---------------------------(end of broadcast)---------------------------
TIP 8: explain analyze is your friend

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Henriksen, Jonas F 2004-09-27 10:45:30 Re: checksum
Previous Message Philippe Lang 2004-09-27 09:43:42 How to terminate an individual client connection gracefully?