Обсуждение: Link error from libpq++ on RedHat 6.0 and Postgres 6.5.1

Поиск
Список
Период
Сортировка

Link error from libpq++ on RedHat 6.0 and Postgres 6.5.1

От
Claudio Cicognani
Дата:
 
 
 
Hallo,

I received the following error when compiling C++ code (using -lpq++
-lpq -lcrypt) with Postgres

6.5.1 (last RPM files) on Red Hat 6.0 (glibc 2) :
/usr/lib/libpq++.so: undefined reference to `clone__Q2t12basic_string3ZcZt18string_char_traits1ZcZt24__default_alloc_template2b1i03Rep'

/usr/lib/libpq++.so: undefined reference to `__dl__Q2t12basic_string3ZcZt18string_char_traits1ZcZt24__default_alloc_template2b1i03RepPv'

/usr/lib/libpq++.so: undefined reference to `__eh_pc' collect2: ld returned 1 exit status

As suggested by Thomas Lockhart, I have downloaded the last RPM source format from ftp.postgresql.org
and try to rebuild the package (from root user) with:

rpm --rebuild postgresql.6.5.1-2.src.rpm

or with:

rpm -ivv postgresql.6.5.1-2.src.rpm
cd /usr/src/redhat/SPECS
rpm -ba postgresql.6.5.1.spec

The build process completed well, but where is the new binary RPM package ?
(The default location is /usr/src/redhat/RPMS/i386, but is empty !!)

PS. Attachment are the postgres "spec" file and part of the "rpm -ba" result file.

Some helps ?
Thanks in advance.

Claudio Cicognani
braintech@btstore.com
 
 

Вложения

Re: [INTERFACES] Link error from libpq++ on RedHat 6.0 and Postgres 6.5.1

От
Thomas Lockhart
Дата:
> I received the following error when compiling C++ code (using -lpq++
> -lpq -lcrypt) with Postgres
> 6.5.1 (last RPM files) on Red Hat 6.0 (glibc 2) :
> /usr/lib/libpq++.so: undefined reference to
> ...
> /usr/lib/libpq++.so: undefined reference to `__eh_pc' collect2: ld
> returned 1 exit status
> As suggested by Thomas Lockhart, I have downloaded the last RPM
> source format from ftp.postgresql.org
> and try to rebuild the package (from root user) with:
>   rpm --rebuild postgresql.6.5.1-2.src.rpm
> or with:
>   rpm -ivv postgresql.6.5.1-2.src.rpm
>   cd /usr/src/redhat/SPECS
>   rpm -ba postgresql.6.5.1.spec
> The build process completed well, but where is the new binary RPM
> package ?
> (The default location is /usr/src/redhat/RPMS/i386, but is empty !!)
> PS. Attachment are the postgres "spec" file and part of the "rpm
> -ba" result file.

I did not find the result file in your attachments. Attached is a
snippet from the end of my "rpm --rebuild", and it shows things being
written to where you expect. Things do *not* get written if there were
errors in the build, and you might be running into that. Sometimes
those errors are hard to see, since rpm continues through that phase
of the build. Look for things like "File missing"...

You might try instead using the RedHat beta rpms from
 ftp://rawhide.redhat.com/rawhide/i386/RedHat/RPMS

which are based on Lamar Owen's recent spec files.

Good luck.
                      - Thomas

Finding provides...
Finding requires...
ldd: warning: you do not have execution permission for
`/var/tmp/pgsql-root/usr/lib/libpgtcl.so.2.0'
Provides: libpgtcl.so.2.0
Prereqs: /sbin/ldconfig
Requires: tcl tk ld-linux.so.2 libX11.so.6 libc.so.6 libcrypt.so.1
libdl.so.2 libhistory.so.3 libm.so.6 libncurses.so.4 libnsl.so.1
libpgtcl.so.2.0 libpq.so.2.0 libreadline.so.3 libtcl8.0.so
libtermcap.so.2 libtk8.0.so /bin/sh
Wrote: /usr/src/redhat/RPMS/i386/postgresql-6.5.1-2.i386.rpm
Wrote: /usr/src/redhat/RPMS/i386/postgresql-server-6.5.1-2.i386.rpm
Wrote: /usr/src/redhat/RPMS/i386/postgresql-devel-6.5.1-2.i386.rpm
Wrote: /usr/src/redhat/RPMS/i386/postgresql-jdbc-6.5.1-2.i386.rpm
Wrote: /usr/src/redhat/RPMS/i386/postgresql-odbc-6.5.1-2.i386.rpm
Wrote: /usr/src/redhat/RPMS/i386/postgresql-perl-6.5.1-2.i386.rpm
Wrote: /usr/src/redhat/RPMS/i386/postgresql-python-6.5.1-2.i386.rpm
Wrote: /usr/src/redhat/RPMS/i386/postgresql-tcl-6.5.1-2.i386.rpm
Executing: %clean
+ umask 022
+ cd /usr/src/redhat/BUILD
+ cd postgresql-6.5.1
+ rm -rf /var/tmp/pgsql-root
+ rm -f perlfiles.list
+ rm -rf howto
+ exit 0
Executing: --clean
+ umask 022
+ cd /usr/src/redhat/BUILD
+ rm -rf postgresql-6.5.1
+ exit 0

-- 
Thomas Lockhart                lockhart@alumni.caltech.edu
South Pasadena, California