Re: pgsql and C++ compiling question

From: teg(at)redhat(dot)com (Trond Eivind =?iso-8859-1?q?Glomsr=d8d?=)
To: Larry Rosenman <ler(at)lerctr(dot)org>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: pgsql and C++ compiling question
Date: 2000-12-08 23:20:06
Message-ID: xuyy9xq4i1l.fsf@halden.devel.redhat.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Larry Rosenman <ler(at)lerctr(dot)org> writes:

> * Tim Barnard <tbarnard(at)povn(dot)com> [001208 15:25]:
> > I am able to compile and link a c++ app with libpq++, provided I use g++. If I attempt to compile with egcs I get the following link-time errors. Any ideas as to what I may be doing wrong? Any help would be much appreciated.
> >
> > cca.o: In function `__malloc_alloc_template<0>::oom_malloc(unsigned int)':
> > cca.o(.__malloc_alloc_template<0>::gnu.linkonce.t.oom_malloc(unsigned int)+0x17): undefined reference to `endl(ostream &)'
> > cca.o(.__malloc_alloc_template<0>::gnu.linkonce.t.oom_malloc(unsigned int)+0x21): undefined reference to `cerr'
> > cca.o(.__malloc_alloc_template<0>::gnu.linkonce.t.oom_malloc(unsigned int)+0x26): undefined reference to `ostream::operator<<(char const *)'
> > cca.o(.__malloc_alloc_template<0>::gnu.linkonce.t.oom_malloc(unsigned int)+0x31): undefined reference to `ostream::operator<<(ostream &(*)(ostream &))'
> > cca.o: In function `basic_string<char, string_char_traits<char>, __default_alloc_template<true, 0> >::Rep::copy(unsigned int, char const *, unsigned int)':
> > cca.o(.basic_string<char, string_char_traits<char>, __default_alloc_template<1, 0> >::Rep::gnu.linkonce.t.copy(unsigned int, char const *, unsigned int)+0x2a): undefined reference to `string_char_traits<char>::copy(char *, char const *, unsigned int)'
> > /usr/local/pgsql/lib/libpq++.so: undefined reference to `__out_of_range(char const *)'
> > /usr/local/pgsql/lib/libpq++.so: undefined reference to `__length_error(char const *)'
> > collect2: ld returned 1 exit status
> > make: *** [cca] Error 1

> I believe g++ and egcs changed binary compatibility

Actually, no g++ releases are compatible. Nor is the same one across
multiple glibcs. C++ is just a bad bet for binary compatibility - this
will hopefully change when gcc 3 is out, but thats not just around the
corner

--
Trond Eivind Glomsrød
Red Hat, Inc.

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Joel Burton 2000-12-08 23:29:15 Re: PL/pgSQL compatibility?
Previous Message Joel Burton 2000-12-08 22:21:47 Re: PL/pgSQL compatibility?