Bug 146453 - [gcc 4.x] stabilize dev-libs/libpqxx-2.6.8
Bug#: 146453 Product:  Gentoo Linux Version: unspecified Platform: All
OS/Version: Linux Status: RESOLVED Severity: normal Priority: P2
Resolution: FIXED Assigned To: alpha@gentoo.org Reported By: carlo@gentoo.org
Component: GCC Porting
URL: 
Summary: [gcc 4.x] stabilize dev-libs/libpqxx-2.6.8
Keywords:  
Status Whiteboard: 
Opened: 2006-09-05 13:41 0000
Description:   Opened: 2006-09-05 13:41 0000
i686-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I../include/pqxx -I../include
-I../include -I/usr/include/postgresql -O2 -march=athlon64 -pipe -fforce-addr
-mfpmath=sse -funit-at-a-time -msse3 -fvisibility-inlines-hidden -c util.cxx 
-fPIC -DPIC -o .libs/util.o
util.cxx:576: error: specialization of 'void
pqxx::internal::PQAlloc<T>::freemem() [with T = pg_result]' in different
namespace
util.cxx:576: error:   from definition of 'void
pqxx::internal::PQAlloc<T>::freemem() [with T = pg_result]'
util.cxx:583: error: specialization of 'void
pqxx::internal::PQAlloc<T>::freemem() [with T = pgNotify]' in different
namespace
util.cxx:583: error:   from definition of 'void
pqxx::internal::PQAlloc<T>::freemem() [with T = pgNotify]'
make[1]: *** [util.lo] Error 1
make[1]: *** Waiting for unfinished jobs....
 i686-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I../include/pqxx -I../include
-I../include -I/usr/include/postgresql -O2 -march=athlon64 -pipe -fforce-addr
-mfpmath=sse -funit-at-a-time -msse3 -fvisibility-inlines-hidden -c
transaction_base.cxx -o transaction_base.o >/dev/null 2>&1
make[1]: Leaving directory
`/var/tmp/portage/libpqxx-2.5.1/work/libpqxx-2.5.1/src'
make: *** [all-recursive] Error 1


libpqxx-2.5.5 does build fine, but fails all tests

------- Comment #1 From David Grant 2006-09-13 01:32:01 0000 -------
I get this error too for 2.5.1

------- Comment #2 From arthur_torrey@comcast.net 2006-09-24 11:09:01 0000 -------
Additional confirmation here, the key lines from my output log:

 i686-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I../include/pqxx -I../include
-I../include -I/usr/include/postgresql -Os -march=athlon-xp -pipe
-fomit-frame-pointer -fvisibility-inlines-hidden -MT util.lo -MD -MP -MF
.deps/util.Tpo -c util.cxx  -fPIC -DPIC -o .libs/util.o
 i686-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I. -I../include/pqxx -I../include
-I../include -I/usr/include/postgresql -Os -march=athlon-xp -pipe
-fomit-frame-pointer -fvisibility-inlines-hidden -MT transaction_base.lo -MD
-MP -MF .deps/transaction_base.Tpo -c transaction_base.cxx -o
transaction_base.o >/dev/null 2>&1
util.cxx:576: error: specialization of 'void
pqxx::internal::PQAlloc<T>::freemem() [with T = pg_result]' in different
namespace
util.cxx:576: error:   from definition of 'void
pqxx::internal::PQAlloc<T>::freemem() [with T = pg_result]'
util.cxx:583: error: specialization of 'void
pqxx::internal::PQAlloc<T>::freemem() [with T = pgNotify]' in different
namespace
util.cxx:583: error:   from definition of 'void
pqxx::internal::PQAlloc<T>::freemem() [with T = pgNotify]'
make[1]: *** [util.lo] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory
`/var/tmp/portage/libpqxx-2.5.1/work/libpqxx-2.5.1/src'
make: *** [all-recursive] Error 1

!!! ERROR: dev-libs/libpqxx-2.5.1 failed.
Call stack:
  ebuild.sh, line 1546:   Called dyn_compile
  ebuild.sh, line 937:   Called src_compile
  libpqxx-2.5.1.ebuild, line 21:   Called die

Machine is an Athlon XP, possibly relevant flags - 
CFLAGS="-Os -march=athlon-xp -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CXXFLAGS="${CFLAGS} -fvisibility-inlines-hidden"
MAKEOPTS="-j2"

------- Comment #3 From arthur_torrey@comcast.net 2006-09-24 11:53:46 0000 -------
As a minor update, I found rev. 2.5.5 exists in testing, so I unmasked it, and
it installed without problems.

------- Comment #4 From Jakub Moc (RETIRED) 2006-10-09 12:03:38 0000 -------
*** Bug 150603 has been marked as a duplicate of this bug. ***

------- Comment #5 From Jakub Moc (RETIRED) 2006-10-09 12:05:35 0000 -------
2.5.1 also hasa memory leak -
http://www.mail-archive.com/libpqxx-general@gborg.postgresql.org/msg00234.html

Please, stabilize 2.5.5

------- Comment #6 From Jakub Moc (RETIRED) 2006-10-09 12:06:50 0000 -------
*** Bug 130064 has been marked as a duplicate of this bug. ***

------- Comment #7 From Tom Simnett 2006-11-01 15:13:43 0000 -------
2.5.5 builds fine with gcc 4.1.1. 2.5.1 fails. same error as above.

------- Comment #8 From BigBug 2006-12-06 11:38:02 0000 -------
Also for me, can't compile 2.5.1 with gcc 4.1.1, 2.5.5 - all fine.

------- Comment #9 From Mike Nerone 2006-12-20 12:36:29 0000 -------
Ditto. 2.5.1 doesn't build with gcc-4.1.1, but 2.5.5 does. This prevents
koffice(-meta) (specifically kexi) from building on current stable Gentoo.
Please stabilize 2.5.5.

------- Comment #10 From Mike Nerone 2006-12-20 12:37:07 0000 -------
(Umm, obviously I mean if you have postgres in USE)

------- Comment #11 From Tiziano Müller 2006-12-20 22:36:16 0000 -------
Dear arch-team members. Please stabilize this package since it blocks the
emerge of koffice (stable-version!) if the postgres USE-flag is set (see
message above).
Thanks in advance!

------- Comment #12 From Markus Rothe 2006-12-21 03:55:12 0000 -------
[...]
/bin/sh: line 4: 19554 Illegal instruction     ${dir}$tst
FAIL: test091
/bin/sh: line 4: 19577 Illegal instruction     ${dir}$tst
FAIL: test092
====================================================
93 of 93 tests failed
Please report to Jeroen T. Vermeulen <jtv@xs4all.nl>
====================================================
make[1]: *** [check-TESTS] Error 1
make[1]: Leaving directory
`/var/tmp/portage/libpqxx-2.6.8/work/libpqxx-2.6.8/test'
make: *** [check-am] Error 2


anyone else getting this? (this is ppc64)

------- Comment #13 From Gustavo Zacarias (RETIRED) 2006-12-21 06:35:53 0000 -------
Markus: no issues for me on sparc, all tests pass, thus stable.

------- Comment #14 From Tiziano Müller 2006-12-21 09:11:02 0000 -------
seems to be a 64bit problem, fails on my EM64T as well

------- Comment #15 From Tiziano Müller 2006-12-21 09:20:13 0000 -------
correction. corsair: You need a running database postgresql-server for testing,
then you have/can export the following vars to tell which db/user/etc. to use:
PGDATABASE, PGHOST, PGPORT, PGUSER

... and there's a minor bug on 64bit: :-)
Created large object #16713
Exception: Large objects: false positive on !=
FAIL: test051

------- Comment #16 From Tiziano Müller 2006-12-21 10:13:33 0000 -------
ok, the bug I mentioned isn't a 64bit bug, but a gcc-4.1* (why do we want to
stable this package again? :) which seems to show up only when compiling with
-O2.
http://thaiopensource.org/development/libpqxx/ticket/49

------- Comment #17 From Markus Rothe 2006-12-21 12:45:00 0000 -------
I just haven't read the instructions.. If you follow them then it should be ok.
stable on ppc64.

------- Comment #18 From Markus Meier 2006-12-23 05:08:57 0000 -------
dev-libs/libpqxx-2.6.8
1. emerges on x86
2. fails test051:
Created large object #17363
Exception: Large objects: false positive on !=
FAIL: test051

3. passes collision test
4. dev-db/kpogre-1.2.7 emerges and works with it

Gentoo Base System version 1.12.6
Portage 2.1.1-r2 (default-linux/x86/2006.1/desktop, gcc-4.1.1, glibc-2.4-r4,
2.6.18.4 i686)
=================================================================
System uname: 2.6.18.4 i686 Genuine Intel(R) CPU           T2300  @ 1.66GHz
Last Sync: Sat, 23 Dec 2006 12:00:01 +0000
ccache version 2.3 [disabled]
app-admin/eselect-compiler: [Not Present]
dev-java/java-config: 1.3.7, 2.0.30
dev-lang/python:     2.3.5-r3, 2.4.3-r4
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.3
dev-util/confcache:  [Not Present]
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.60
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2
sys-devel/binutils:  2.16.1-r3
sys-devel/gcc-config: 1.3.14
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.17-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=prescott -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config
/usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf
/etc/java-config/vms/ /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c"
CXXFLAGS="-O2 -march=prescott -pipe -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--nospinner"
FEATURES="autoconfig collision-protect distlocks metadata-transfer
parallel-fetch sandbox sfperms strict test userfetch userpriv usersandbox"
GENTOO_MIRRORS="http://mirror.switch.ch/mirror/gentoo/ http://gentoo.inode.at/"
LINGUAS="en de en_GB de_CH"
MAKEOPTS="-j3"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress
--force --whole-file --delete --delete-after --stats --timeout=180
--exclude='/distfiles' --exclude='/local' --exclude='/pack
ages'"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 X a52 aac acpi alsa alsa_cards_ali5451 alsa_cards_als4000
alsa_cards_atiixp alsa_cards_atiixp-modem alsa_cards_bt87x alsa_cards_ca0106
alsa_cards_cmipci alsa_cards_emu10k1x alsa_cards_ens1370 alsa
_cards_ens1371 alsa_cards_es1938 alsa_cards_es1968 alsa_cards_fm801
alsa_cards_hda-intel alsa_cards_intel8x0 alsa_cards_intel8x0m
alsa_cards_maestro3 alsa_cards_trident alsa_cards_usb-audio alsa_cards_via8
2xx alsa_cards_via82xx-modem alsa_cards_ymfpci alsa_pcm_plugins_adpcm
alsa_pcm_plugins_alaw alsa_pcm_plugins_asym alsa_pcm_plugins_copy
alsa_pcm_plugins_dmix alsa_pcm_plugins_dshare alsa_pcm_plugins_dsnoop
 alsa_pcm_plugins_empty alsa_pcm_plugins_extplug alsa_pcm_plugins_file
alsa_pcm_plugins_hooks alsa_pcm_plugins_iec958 alsa_pcm_plugins_ioplug
alsa_pcm_plugins_ladspa alsa_pcm_plugins_lfloat alsa_pcm_plugin
s_linear alsa_pcm_plugins_meter alsa_pcm_plugins_mulaw alsa_pcm_plugins_multi
alsa_pcm_plugins_null alsa_pcm_plugins_plug alsa_pcm_plugins_rate
alsa_pcm_plugins_route alsa_pcm_plugins_share alsa_pcm_plugin
s_shm alsa_pcm_plugins_softvol apache2 asf berkdb bitmap-fonts cairo cdr cdrom
cli cracklib crypt cups dbus divx dlloader dri dts dvd dvdr dvdread eds
elibc_glibc emboss encode fam ffmpeg firefox flac fort
ran gdbm gif gnome gpm gstreamer gtk hal iconv input_devices_keyboard
input_devices_mouse ipv6 isdnlog java jpeg kde kdeenablefinal kernel_linux ldap
libg++ linguas_de linguas_de_CH linguas_en linguas_en_G
B mad mikmod mmx mono mp3 mpeg ncurses nls nptl nptlonly ogg opengl oss pam
pcre perl png ppds pppd python qt3 qt4 quicktime readline reflection rtsp ruby
samba sdl session smp spell spl sse sse2 sse3 ssl
svg tcpd test tetex theora threads truetype truetype-fonts type1-fonts udev
unicode userland_GNU vcd video_cards_fbdev video_cards_i810 video_cards_vesa
vorbis win32codecs wxwindows x264 xine xml xorg xpri
nt xv xvid zlib"
Unset:  CTARGET, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, PORTAGE_RSYNC_EXTRA_OPTS,
PORTDIR_OVERLAY

------- Comment #19 From Tiziano Müller 2006-12-23 13:11:58 0000 -------
Ok, it seems that the failure of test051 is a bug in gcc-4.1.* triggered by the
test itself and not the library. Replacing an eventual -O2 by -O1 in
test/Makefile solves the problem.
Therefore I would like to ask you to update the ebuild before you start
testing, thanks for your work!

------- Comment #20 From Jakub Moc (RETIRED) 2006-12-24 04:29:30 0000 -------
CCing amd64:

app-office/kexi-1.5.2: depends  amd64: unsolvable default-linux/amd64/2006.1,
solutions: [ dev-libs/libpqxx ]
app-office/koffice-1.5.2-r1: depends  amd64: unsolvable
default-linux/amd64/2006.1, solutions: [ dev-libs/libpqxx ]
media-gfx/showimg-0.9.5: depends  amd64: unsolvable default-linux/amd64/2006.1,
solutions: [ dev-libs/libpqxx ]

------- Comment #21 From Markus Meier 2006-12-24 04:32:09 0000 -------
(In reply to comment #19)

looks good...
===================
All 93 tests passed
===================

------- Comment #22 From Tobias Scherbaum 2006-12-29 12:21:02 0000 -------
ppc stable

------- Comment #23 From Peter Weller 2006-12-29 16:28:17 0000 -------
Done on amd64 :)

------- Comment #24 From Scott Van Der Wall 2006-12-31 12:37:14 0000 -------
dev-libs/libpqxx-2.6.8

on x86:
1: emerges ok...but fails every test

====================================================
92 of 93 tests failed
Please report to Jeroen T. Vermeulen <jtv@xs4all.nl>
====================================================

looks like it can't connect to the database...so should this error be ignored? 
if so I'll recompile with USE="-test" and post my results

------- Comment #25 From Tiziano Müller 2007-01-01 09:51:33 0000 -------
@Scott: Please read the instructions displayed before the tests start. There
are env variables which can be used to change database-name/-user/-port/-ip.
Make sure that the specified database exists, that you don't have any data
there and that the specified user can access the database without a password
("trust" entry in pg_hba.conf).

------- Comment #26 From Christian Faulhammer 2007-01-03 01:20:04 0000 -------
ZAP libpqxx86ified

------- Comment #27 From Jose Luis Rivero (yoswink) 2007-04-24 09:35:30 0000 -------
This was marked stable on alpha long ago. Sorry.