Re: DBD::Pg 2.10.7 compile failed on RH4

From: <Tapio(dot)Niva(at)tietoenator(dot)com>
To: <laurenz(dot)albe(at)wien(dot)gv(dot)at>, <pgsql-general(at)postgresql(dot)org>
Cc: <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Subject: Re: DBD::Pg 2.10.7 compile failed on RH4
Date: 2008-10-07 12:53:01
Message-ID: 74C0611212AC994FA92E965255B0FDFE0E20E5@lotus.eu.tieto.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hello,
thanks for help, -m32 option to Makefile and make was successful, so was
also make test & make install.
Our own tests are connecting to postgres - at least so far.

Tom,we are using 32-bit perl & 32-bit postgres on 64-bit RHEL4, because
some of our sw still are 32-bit.
DBD::Pg is the latest version 2.10.7 from CPAN.

Again, thanks for great help !

Have a nice day

BR, Tapio

-----Original Message-----
From: Albe Laurenz [mailto:laurenz(dot)albe(at)wien(dot)gv(dot)at]
Sent: 7. lokakuuta 2008 15:04
To: Niva Tapio; pgsql-general(at)postgresql(dot)org
Subject: RE: [GENERAL] DBD::Pg 2.10.7 compile failed on RH4

Tapio.Niva wrote:
> we have 32-bit PostgreSQL version 8.3.4 on 64-bit RHEL4 , Postgres
> itself is working as expected.
> We are using PostreSQL via following perl version
> ............................................
> # perl -v
> This is perl, v5.10.0 built for i686-linux-thread-multi
> (with 4 registered patches, see perl -V for more detail)
> Copyright 1987-2007, Larry Wall
> Binary build 1004 [287188] provided by ActiveState
> http://www.ActiveState.com
> Built Sep 3 2008 11:22:08
> ............................................
>
> Our problem is that DBD::Pg version 2.10.7 will not compile ,
> /usr/bin/ld skips all libpq files as incompatible - please see a slice
> of the result below :
> ............................................
> rm -f blib/arch/auto/DBD/Pg/Pg.so
> LD_RUN_PATH="/usr/lib" gcc -shared -O2 Pg.o dbdimp.o quote.o types.o
> -o blib/arch/auto/DBD/Pg/Pg.so \
> -L/usr/lib -lpq -lm \
>
> /usr/bin/ld: skipping incompatible /usr/lib/libpq.so when searching
for
> -lpq

[...]
>
> # file /usr/lib/libpq.so.5.1
> /usr/lib/libpq.so.5.1: ELF 32-bit LSB shared object, Intel 80386,
> version 1 (SYSV), stripped
> #
>
> ............................................
>
> I assume that something is mixed here (=32/64-bit) because linker
claims
> for incompatibility - but because there is only 1 libpq created by
> Postgres install, I'm a bit lost.
> Should we use some other linker version ?
>
> Any ideas how to proceed ?

Yes, the problem must be that the compiler produces 64-bit code
which cannot be linked with 32-bit code.

You can either install 64-bit PostgreSQL libraries or give
gcc the -m32 option so that it generates 32-bit code.

Yours,
Laurenz Albe

In response to

Browse pgsql-general by date

  From Date Subject
Next Message paulo matadr 2008-10-07 12:54:08 pg_hotbackup how to
Previous Message Tom Lane 2008-10-07 12:50:00 Re: Installation on CentOS 5.2 (readline trouble)