public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
* Re: other/3796: IA64 undefined references in shared libraries linked with -Bsymbolic
@ 2001-11-16  9:26 wilson
  0 siblings, 0 replies; 3+ messages in thread
From: wilson @ 2001-11-16  9:26 UTC (permalink / raw)
  To: W.Stuehlmeyer, gcc-bugs, gcc-gnats, gcc-prs, nobody, wilson

Synopsis: IA64 undefined references in shared libraries linked with -Bsymbolic

Responsible-Changed-From-To: unassigned->wilson
Responsible-Changed-By: wilson
Responsible-Changed-When: Tue Nov 20 22:53:16 2001
Responsible-Changed-Why:
    IA-64 maintainer
State-Changed-From-To: open->closed
State-Changed-By: wilson
State-Changed-When: Tue Nov 20 22:53:16 2001
State-Changed-Why:
    For IA-64, gcc 3.0.1 is not ABI compatible with gcc 3.0.
    Likewise, gcc 3.0.2 is not ABI compatible with 3.0.1.
    IA-64 gcc development was not finished before the gcc3
    release process started, so our choice was to tell everybody
    not to use GCC3, or to try to finish it during the gcc3
    release process and warn people about ABI compatibilities.
    We choose the latter approach.
    
    I don't have a copy of the SuSE OS release, but it sounds
    like it was built using gcc-3.0.  Thus gcc-3.0.1 is not
    supported on this system.  It will work most of the time,
    but it will fail in some cases when trying to link gcc-3.0
    compiled shared libraries into gcc-3.0.1 compiled
    applications.  That is exactly the problem you ran into.
    The only good solution is to recompile all system libraries
    (e.g. glibc) with gcc-3.0.1, but that will be difficult and
    time consuming.  It is probably better to not use 3.0.1,
    or wait for a new OS release built using a later compiler.

http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=3796&database=gcc


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

* Re: other/3796: IA64 undefined references in shared libraries linked with -Bsymbolic
@ 2001-11-16  9:29 wilson
  0 siblings, 0 replies; 3+ messages in thread
From: wilson @ 2001-11-16  9:29 UTC (permalink / raw)
  To: wilson; +Cc: gcc-prs

The following reply was made to PR other/3796; it has been noted by GNATS.

From: wilson@gcc.gnu.org
To: W.Stuehlmeyer@t-online.de, gcc-bugs@gcc.gnu.org, gcc-gnats@gcc.gnu.org,
  gcc-prs@gcc.gnu.org, nobody@gcc.gnu.org, wilson@gcc.gnu.org
Cc:  
Subject: Re: other/3796: IA64 undefined references in shared libraries linked with -Bsymbolic
Date: 21 Nov 2001 06:53:16 -0000

 Synopsis: IA64 undefined references in shared libraries linked with -Bsymbolic
 
 Responsible-Changed-From-To: unassigned->wilson
 Responsible-Changed-By: wilson
 Responsible-Changed-When: Tue Nov 20 22:53:16 2001
 Responsible-Changed-Why:
     IA-64 maintainer
 State-Changed-From-To: open->closed
 State-Changed-By: wilson
 State-Changed-When: Tue Nov 20 22:53:16 2001
 State-Changed-Why:
     For IA-64, gcc 3.0.1 is not ABI compatible with gcc 3.0.
     Likewise, gcc 3.0.2 is not ABI compatible with 3.0.1.
     IA-64 gcc development was not finished before the gcc3
     release process started, so our choice was to tell everybody
     not to use GCC3, or to try to finish it during the gcc3
     release process and warn people about ABI compatibilities.
     We choose the latter approach.
     
     I don't have a copy of the SuSE OS release, but it sounds
     like it was built using gcc-3.0.  Thus gcc-3.0.1 is not
     supported on this system.  It will work most of the time,
     but it will fail in some cases when trying to link gcc-3.0
     compiled shared libraries into gcc-3.0.1 compiled
     applications.  That is exactly the problem you ran into.
     The only good solution is to recompile all system libraries
     (e.g. glibc) with gcc-3.0.1, but that will be difficult and
     time consuming.  It is probably better to not use 3.0.1,
     or wait for a new OS release built using a later compiler.
 
 http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&pr=3796&database=gcc


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

* other/3796: IA64 undefined references in shared libraries linked with -Bsymbolic
@ 2001-07-24 11:06 W.Stuehlmeyer
  0 siblings, 0 replies; 3+ messages in thread
From: W.Stuehlmeyer @ 2001-07-24 11:06 UTC (permalink / raw)
  To: gcc-gnats

>Number:         3796
>Category:       other
>Synopsis:       IA64 undefined references in shared libraries linked with -Bsymbolic
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Tue Jul 24 11:06:02 PDT 2001
>Closed-Date:
>Last-Modified:
>Originator:     Wolfgang Stuehlmeyer
>Release:        gcc-20010716
>Organization:
>Environment:
SuSE linux 7.2 beta on ia64
Reading specs from /usr/local/lib/gcc-lib/ia64-suse-linux/3.0.1/specs
Configured with: ./configure --enable-threads=posix --enable-shared --enable-checking --enable-nls --prefix=/usr/local --with-local-prefix=/usr/local --infodir=/usr/local/info --mandir=/usr/local/man --with-gxx-include-dir=/usr/local/include/g++-v3 ia64-suse-linux
Thread model: posix
gcc version Snapshot 20010716
>Description:
Build shared library:
=====================
g++ -o /home/ole/cool.WHITE/viking/pcwsr3_ia64_linux_libc6_debug/lib/libmutant.so \
     obj/pcwsr3_ia64_linux_libc6_debug/mutant_def.o \
     -shared -Wl,-soname,libmutant.so,-Bsymbolic \
     -g \
     -L/home/ole/cool.WHITE/viking/pcwsr3_ia64_linux_libc6_debug/lib \
     -L/home/ole/cool.BLACK/viking/pcwsr3_ia64_linux_libc6_debug/lib \
     \
     obj/pcwsr3_ia64_linux_libc6_debug/libmutant.a \
     ../../local/unix/obj/pcwsr3_ia64_linux_libc6_debug/liblocal.a \
     ../../common/unix/obj/pcwsr3_ia64_linux_libc6_debug/libcommon.a \
     ../../vmem/unix/obj/pcwsr3_ia64_linux_libc6_debug/libvmem.a \
     ../../version/unix/obj/pcwsr3_ia64_linux_libc6_debug/libversion.a \
     ../../os/unix/obj/pcwsr3_ia64_linux_libc6_debug/libosdep.a \
     ../../runtime/unix/obj/pcwsr3_ia64_linux_libc6_debug/libcrt.a    \
     \
     -lcoolcrypto -ltrace \
     \
     -L/home/ole/cool.WHITE/viking/pcwsr3_ia64_linux_libc6_debug/lib \
     -L/home/ole/cool.BLACK/viking/pcwsr3_ia64_linux_libc6_debug/lib \
     \
     -ldl -lc -lpthread `gcc --print-libgcc-file` \
     \
     | c++filt
/usr/local/lib/gcc-lib/ia64-suse-linux/3.0.1/libgcc.a(fde-glibc.o): In function `_Unwind_FindTableEntry':
fde-glibc.o(.text+0x3c1): undefined reference to `__ia64_app_header'
fde-glibc.o(.text+0x451): undefined reference to `_dl_load_lock'
fde-glibc.o(.text+0x480): undefined reference to `_dl_loaded'
fde-glibc.o(.text+0x531): undefined reference to `_dl_load_lock'
collect2: ld returned 1 exit status

The error appears only with the -Bsymbolic linker switch in
some libraries (not in all). I found all unresolved externals
 in the gcc 3.0 archive libgcc.a

How should i understand the comments in gcc/config/ia64/fde-glibc.c?
The code should be added into static link applications, 
but not into symbolic linked shared libraries?

The variable __ia64_app_header is included in crtbegin.asm only and 
crtbegin.o will be used from applications only.

I don't know how to repeat the problem with a small shared 
library.
>How-To-Repeat:

>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:


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

end of thread, other threads:[~2001-11-21  6:56 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-11-16  9:26 other/3796: IA64 undefined references in shared libraries linked with -Bsymbolic wilson
  -- strict thread matches above, loose matches on Subject: below --
2001-11-16  9:29 wilson
2001-07-24 11:06 W.Stuehlmeyer

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).