public inbox for gcc-help@gcc.gnu.org
 help / color / mirror / Atom feed
* cannot link [against] shared libraries
@ 2001-07-27  1:38 Michalski, Rafał
  2001-07-27  1:57 ` Alexandre Oliva
  0 siblings, 1 reply; 5+ messages in thread
From: Michalski, Rafał @ 2001-07-27  1:38 UTC (permalink / raw)
  To: 'gcc-help@gcc.gnu.org'

After upgrading my compiler to 3.0,
I am no longer able to link against 
the Xerces XML parser shared library.
The same C++ program that linked well under 2.95.3
now produces unresolved symbols messages
about library symbols.

The reason for upgrade was 
to get rid of the compiler bug
when gdb cannot see variables declared
in nested scopes.

Building the library itself
is lo longer possible due to ld errors.

Are some extra options necessary in 3.0 to build/link against .so ?

My platforms are Slackware Linux 8.0
and Sparc Solaris 8.

Rafal Michalski

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: cannot link [against] shared libraries
  2001-07-27  1:38 cannot link [against] shared libraries Michalski, Rafał
@ 2001-07-27  1:57 ` Alexandre Oliva
  0 siblings, 0 replies; 5+ messages in thread
From: Alexandre Oliva @ 2001-07-27  1:57 UTC (permalink / raw)
  To: Michalski, Rafał; +Cc: 'gcc-help@gcc.gnu.org'

On Jul 27, 2001, "Michalski, Rafa&lstrok;" <RMichalski@era.pl> wrote:

> After upgrading my compiler to 3.0,
> I am no longer able to link against 
> the Xerces XML parser shared library.

You'll have to rebuild that library.  GCC 3.0 has adopted the new
multi-vendor C++ ABI, which required changes in the representation of
types and modifications in name mangling.

-- 
Alexandre Oliva   Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer                  aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicamp        oliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist    *Please* write to mailing lists, not to me

^ permalink raw reply	[flat|nested] 5+ messages in thread

* RE: cannot link [against] shared libraries
  2001-07-27  8:58 Michalski, Rafa&lstrok;
@ 2001-07-27 10:04 ` Rob Newberry
  0 siblings, 0 replies; 5+ messages in thread
From: Rob Newberry @ 2001-07-27 10:04 UTC (permalink / raw)
  To: RMichalski; +Cc: Alexandre Oliva, gcc-help

> > You'll have to rebuild that library.  GCC 3.0 has adopted the new
> > multi-vendor C++ ABI, which required changes in the representation of
> > types and modifications in name mangling.
> 
> Does this mean i cannot use any libraries compiled with gcc < 3.0?
> Anything like openssl from any Linux distribution, for example?

I'm no GCC expert, but I understand this kind of problem from other
compilers and platforms.

The ABI issue should affect C++ libraries -- if the library exposes C++
objects (which XERCES does), then it will need to be rebuilt.

Libraries that expose only C routines -- such as OpenSSL -- should be OK.

Rob

---------------------------------------------------------------------
Rob Newberry
Director of Fajita Technology
Group Logic, Inc.


^ permalink raw reply	[flat|nested] 5+ messages in thread

* RE: cannot link [against] shared libraries
@ 2001-07-27  8:58 Michalski, Rafa&lstrok;
  0 siblings, 0 replies; 5+ messages in thread
From: Michalski, Rafa&lstrok; @ 2001-07-27  8:58 UTC (permalink / raw)
  To: 'Alexandre Oliva'; +Cc: 'gcc-help@gcc.gnu.org'

> > After upgrading my compiler to 3.0,
> > I am no longer able to link against 
> > the Xerces XML parser shared library.
> 
> You'll have to rebuild that library.  GCC 3.0 has adopted the new
> multi-vendor C++ ABI, which required changes in the representation of
> types and modifications in name mangling.

Good!

It works now, thanks lot!
And debugger sees in nested scopes.
I only had to remove -instances=static from Makefile.tmpl
- interesting for Xerces users, however.

Still wondering what with old compiled stuff.
I'm getting to prick openldap libs for first.

Yours 
Rafal

^ permalink raw reply	[flat|nested] 5+ messages in thread

* RE: cannot link [against] shared libraries
@ 2001-07-27  8:58 Michalski, Rafa&lstrok;
  2001-07-27 10:04 ` Rob Newberry
  0 siblings, 1 reply; 5+ messages in thread
From: Michalski, Rafa&lstrok; @ 2001-07-27  8:58 UTC (permalink / raw)
  To: 'Alexandre Oliva'; +Cc: 'gcc-help@gcc.gnu.org'

> > After upgrading my compiler to 3.0,
> > I am no longer able to link against 
> > the Xerces XML parser shared library.
> 
> You'll have to rebuild that library.  GCC 3.0 has adopted the new
> multi-vendor C++ ABI, which required changes in the representation of
> types and modifications in name mangling.

Does this mean i cannot use any libraries 
compiled with gcc < 3.0?
Anything like openssl from any Linux distribution,
for example?


/R

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2001-07-27 10:04 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-07-27  1:38 cannot link [against] shared libraries Michalski, Rafa&lstrok;
2001-07-27  1:57 ` Alexandre Oliva
2001-07-27  8:58 Michalski, Rafa&lstrok;
2001-07-27  8:58 Michalski, Rafa&lstrok;
2001-07-27 10:04 ` Rob Newberry

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).