Thread: AIX and V8 beta 3

AIX and V8 beta 3

From
Brad Nicholson
Date:
Tried to install this  on AIX 5.1, no luck (compiles fine without 
--enable-thread-safety though) .

AIX 5.1
gcc 3.3.2

./configure --prefix=/opt/dbs/pgsql800b3-AIX51-2004-09-30 

--with-includes=/opt/dbs/readline-5-AIX51-2004-09-29/include:/opt/dbs/zlib-121-AIX51-2004-09-29/include:/opt/dbs/gdb-621-AIX51-2004-09-30/include

--enable-debug --enable-thread-safety 

-with-libraries=/opt/dbs/readline-5-AIX51-2004-09-29/lib:/opt/dbs/zlib-121-AIX51-2004-09-29/lib:/opt/dbs/gdb-621-AIX51-2004-09-30/lib

During the make:

gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes 
-Wmissing-declarations pg_ctl.o exec.o -L../../../src/interfaces/libpq 
-lpq -L../../../src/port -L/opt/dbs/readline-5-AIX51-2004-09-29/lib 
-L/opt/dbs/zlib-121-AIX51-2004-09-29/lib 
-L/opt/dbs/gdb-621-AIX51-2004-09-30/lib  -lpgport -lz -lreadline 
-lcurses -lPW -lld -lnsl -ldl -lm  -o pg_ctl
ld: 0711-317 ERROR: Undefined symbol: .pthread_setspecific
ld: 0711-317 ERROR: Undefined symbol: .pthread_key_create
ld: 0711-317 ERROR: Undefined symbol: .pthread_getspecific
ld: 0711-317 ERROR: Undefined symbol: .pthread_once
ld: 0711-317 ERROR: Undefined symbol: .pthread_mutex_lock
ld: 0711-317 ERROR: Undefined symbol: .pthread_mutex_unlock
ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more 
information.
collect2: ld returned 8 exit status
make[3]: *** [pg_ctl] Error 1


Brad.


Re: AIX and V8 beta 3

From
Bruce Momjian
Date:
Have you tried using cc_r for that compile line?  Does that help?

---------------------------------------------------------------------------

Brad Nicholson wrote:
> Tried to install this  on AIX 5.1, no luck (compiles fine without 
> --enable-thread-safety though) .
> 
> AIX 5.1
> gcc 3.3.2
> 
> ./configure --prefix=/opt/dbs/pgsql800b3-AIX51-2004-09-30 
>
--with-includes=/opt/dbs/readline-5-AIX51-2004-09-29/include:/opt/dbs/zlib-121-AIX51-2004-09-29/include:/opt/dbs/gdb-621-AIX51-2004-09-30/include

> --enable-debug --enable-thread-safety 
>
-with-libraries=/opt/dbs/readline-5-AIX51-2004-09-29/lib:/opt/dbs/zlib-121-AIX51-2004-09-29/lib:/opt/dbs/gdb-621-AIX51-2004-09-30/lib
> 
> During the make:
> 
> gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes 
> -Wmissing-declarations pg_ctl.o exec.o -L../../../src/interfaces/libpq 
> -lpq -L../../../src/port -L/opt/dbs/readline-5-AIX51-2004-09-29/lib 
> -L/opt/dbs/zlib-121-AIX51-2004-09-29/lib 
> -L/opt/dbs/gdb-621-AIX51-2004-09-30/lib  -lpgport -lz -lreadline 
> -lcurses -lPW -lld -lnsl -ldl -lm  -o pg_ctl
> ld: 0711-317 ERROR: Undefined symbol: .pthread_setspecific
> ld: 0711-317 ERROR: Undefined symbol: .pthread_key_create
> ld: 0711-317 ERROR: Undefined symbol: .pthread_getspecific
> ld: 0711-317 ERROR: Undefined symbol: .pthread_once
> ld: 0711-317 ERROR: Undefined symbol: .pthread_mutex_lock
> ld: 0711-317 ERROR: Undefined symbol: .pthread_mutex_unlock
> ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more 
> information.
> collect2: ld returned 8 exit status
> make[3]: *** [pg_ctl] Error 1
> 
> 
> Brad.
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org
> 

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


Re: AIX and V8 beta 3

From
Chris Browne
Date:
pgman@candle.pha.pa.us (Bruce Momjian) writes:
> Have you tried using cc_r for that compile line?  Does that help?

Alas, that is not an option available.

cc_r is specific to the AIX "xlc" compiler; we're using GCC, and xlc
is not available to us.

bash-2.05a$ gcc -v
Reading specs from /usr/local/lib/gcc-lib/powerpc-ibm-aix5.1.0.0/3.3.2/specs
Configured with: ../gcc-3.3.2/configure --disable-nls
Thread model: aix
gcc version 3.3.2
bash-2.05a$ 
-- 
(format nil "~S@~S" "cbbrowne" "cbbrowne.com")
http://www.ntlug.org/~cbbrowne/wp.html
The  behaviour in   that  case has   changed since  system   79  to be
consistent.  -- taken out of context from BUG-LISPM mail


Re: AIX and V8 beta 3

From
Darcy Buskermolen
Date:
On September 30, 2004 05:55 pm, Bruce Momjian wrote:

To me it looks like all you need to do is add -pthreads or maybe -lpthreads  
depending on exact system to your compile line.. 


> Have you tried using cc_r for that compile line?  Does that help?
>
> ---------------------------------------------------------------------------
>
> Brad Nicholson wrote:
> > Tried to install this  on AIX 5.1, no luck (compiles fine without
> > --enable-thread-safety though) .
> >
> > AIX 5.1
> > gcc 3.3.2
> >
> > ./configure --prefix=/opt/dbs/pgsql800b3-AIX51-2004-09-30
> > --with-includes=/opt/dbs/readline-5-AIX51-2004-09-29/include:/opt/dbs/zli
> >b-121-AIX51-2004-09-29/include:/opt/dbs/gdb-621-AIX51-2004-09-30/include
> > --enable-debug --enable-thread-safety
> > -with-libraries=/opt/dbs/readline-5-AIX51-2004-09-29/lib:/opt/dbs/zlib-12
> >1-AIX51-2004-09-29/lib:/opt/dbs/gdb-621-AIX51-2004-09-30/lib
> >
> > During the make:
> >
> > gcc -O2 -fno-strict-aliasing -g -Wall -Wmissing-prototypes
> > -Wmissing-declarations pg_ctl.o exec.o -L../../../src/interfaces/libpq
> > -lpq -L../../../src/port -L/opt/dbs/readline-5-AIX51-2004-09-29/lib
> > -L/opt/dbs/zlib-121-AIX51-2004-09-29/lib
> > -L/opt/dbs/gdb-621-AIX51-2004-09-30/lib  -lpgport -lz -lreadline
> > -lcurses -lPW -lld -lnsl -ldl -lm  -o pg_ctl
> > ld: 0711-317 ERROR: Undefined symbol: .pthread_setspecific
> > ld: 0711-317 ERROR: Undefined symbol: .pthread_key_create
> > ld: 0711-317 ERROR: Undefined symbol: .pthread_getspecific
> > ld: 0711-317 ERROR: Undefined symbol: .pthread_once
> > ld: 0711-317 ERROR: Undefined symbol: .pthread_mutex_lock
> > ld: 0711-317 ERROR: Undefined symbol: .pthread_mutex_unlock
> > ld: 0711-345 Use the -bloadmap or -bnoquiet option to obtain more
> > information.
> > collect2: ld returned 8 exit status
> > make[3]: *** [pg_ctl] Error 1
> >
> >
> > Brad.
> >
> > ---------------------------(end of broadcast)---------------------------
> > TIP 1: subscribe and unsubscribe commands go to majordomo@postgresql.org

-- 
Darcy Buskermolen
Wavefire Technologies Corp.
ph: 250.717.0200
fx:  250.763.1759
http://www.wavefire.com


Re: AIX and V8 beta 3

From
Chris Browne
Date:
darcy@wavefire.com (Darcy Buskermolen) writes:
> On September 30, 2004 05:55 pm, Bruce Momjian wrote:
>
> To me it looks like all you need to do is add -pthreads or maybe
> -lpthreads depending on exact system to your compile line..

-lpthreads does the trick, indeed.  (-lpthread also does the job,
which is disturbing...)

If I liberally salt various makefiles for the various components that
look like they used to be shell scripts with "-lpthreads", it all
turns out fine, and the binary happily passes regression thusly...

... much ado about nothing elided ...    rowtypes             ... ok
test stats                ... ok
test tablespace           ... ok
============== shutting down postmaster               ==============
postmaster stopped

======================All 96 tests passed. 
======================

rm regress.o
make[2]: Leaving directory `/opt/OXRS/Sources/postgresql-8.0.0beta3/src/test/regress'
make[1]: Leaving directory `/opt/OXRS/Sources/postgresql-8.0.0beta3/src/test'
bash-2.05a$ uname -a
AIX fred 1 5 0007B06F4C00

Colour me suspicious that a few extra flags need to get drawn into
somewhere.  It doesn't look to me as though there's a suitable place
to include that in ./configure, which suggests it ought to get dropped
in somewhere else.  

I'm not certain where that "somewhere else" is: - src/makefiles/Makefile.aix?- In the configure script?
-- 
(format nil "~S@~S" "cbbrowne" "ntlug.org")
http://cbbrowne.com/info/spreadsheets.html
I found out why  cats drink out of the toilet. My  mother told me it's
because it's cold in there. And I'm like: How did my mother know THAT?
--Wendy Liebman


Re: AIX and V8 beta 3

From
Bruce Momjian
Date:
Chris Browne wrote:
> darcy@wavefire.com (Darcy Buskermolen) writes:
> > On September 30, 2004 05:55 pm, Bruce Momjian wrote:
> >
> > To me it looks like all you need to do is add -pthreads or maybe
> > -lpthreads depending on exact system to your compile line..
> 
> -lpthreads does the trick, indeed.  (-lpthread also does the job,
> which is disturbing...)
> 
> If I liberally salt various makefiles for the various components that
> look like they used to be shell scripts with "-lpthreads", it all
> turns out fine, and the binary happily passes regression thusly...
> 
> ... much ado about nothing elided ...
>      rowtypes             ... ok
> test stats                ... ok
> test tablespace           ... ok
> ============== shutting down postmaster               ==============
> postmaster stopped
> 
> ======================
>  All 96 tests passed. 
> ======================
> 
> rm regress.o
> make[2]: Leaving directory `/opt/OXRS/Sources/postgresql-8.0.0beta3/src/test/regress'
> make[1]: Leaving directory `/opt/OXRS/Sources/postgresql-8.0.0beta3/src/test'
> bash-2.05a$ uname -a
> AIX fred 1 5 0007B06F4C00
> 
> Colour me suspicious that a few extra flags need to get drawn into
> somewhere.  It doesn't look to me as though there's a suitable place
> to include that in ./configure, which suggests it ought to get dropped
> in somewhere else.  
> 
> I'm not certain where that "somewhere else" is: 
>  - src/makefiles/Makefile.aix?
>  - In the configure script?

config/acx_pthread.m4 should be testing all those thread flags and
defining proper Makefile.global values for them.  Do you want to send me
your config.log offline or check ourself why the tests aren't working. 
I assume you are using 8.0betaX.

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


Re: AIX and V8 beta 3

From
Christopher Browne
Date:
After a long battle with technology, pgman@candle.pha.pa.us (Bruce Momjian), an earthling, wrote:
> config/acx_pthread.m4 should be testing all those thread flags and
> defining proper Makefile.global values for them.  Do you want to
> send me your config.log offline or check ourself why the tests
> aren't working. I assume you are using 8.0betaX.

I'll poke at acx_pthread.m4 first; if I know where to poke around,
it's worth doing so at least briefly.  And yes, you assume right.

This is essentially followup in view of Rod Taylor having indicated he
was losing AIX access.  We definitely need to make sure things play
well on AIX :-).  I have been too busy so far with Slony-I matters to
do any 8.0 beta work, but SOME efforts have to take place...
-- 
(reverse (concatenate 'string "gro.gultn" "@" "enworbbc"))
http://linuxfinances.info/info/unix.html
Never hit someone head on, always sideswipe.  Never say, "Foo's last
patch was brain-damaged", but rather, "While fixing the miscellaneous
bugs in 243.xyz [foo's patch], I found...."
-- from the Symbolics Guidelines for Sending Mail


Re: AIX and V8 beta 3

From
Bruce Momjian
Date:
OK, that 8.0beta config file should find all your thread flags and
define them as PTHREAD_* in Makefile.global.

---------------------------------------------------------------------------

Christopher Browne wrote:
> After a long battle with technology, pgman@candle.pha.pa.us (Bruce Momjian), an earthling, wrote:
> > config/acx_pthread.m4 should be testing all those thread flags and
> > defining proper Makefile.global values for them.  Do you want to
> > send me your config.log offline or check ourself why the tests
> > aren't working. I assume you are using 8.0betaX.
> 
> I'll poke at acx_pthread.m4 first; if I know where to poke around,
> it's worth doing so at least briefly.  And yes, you assume right.
> 
> This is essentially followup in view of Rod Taylor having indicated he
> was losing AIX access.  We definitely need to make sure things play
> well on AIX :-).  I have been too busy so far with Slony-I matters to
> do any 8.0 beta work, but SOME efforts have to take place...
> -- 
> (reverse (concatenate 'string "gro.gultn" "@" "enworbbc"))
> http://linuxfinances.info/info/unix.html
> Never hit someone head on, always sideswipe.  Never say, "Foo's last
> patch was brain-damaged", but rather, "While fixing the miscellaneous
> bugs in 243.xyz [foo's patch], I found...."
> -- from the Symbolics Guidelines for Sending Mail
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 8: explain analyze is your friend
> 

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


Re: AIX and V8 beta 3

From
"Zeugswetter Andreas SB SD"
Date:
> > Have you tried using cc_r for that compile line?  Does that help?
>
> Alas, that is not an option available.
>
> cc_r is specific to the AIX "xlc" compiler; we're using GCC, and xlc
> is not available to us.

What is missing is a -lpthread .

Andreas