Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 87556 - glibc-2.3.2 incompatibility with dual install of gcc 2.95.3 & gcc 3.2
Summary: glibc-2.3.2 incompatibility with dual install of gcc 2.95.3 & gcc 3.2
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: glibc
Version: 8.0
Hardware: i686
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Jakub Jelinek
QA Contact: Brian Brock
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2003-03-28 19:27 UTC by John Ketchum
Modified: 2016-11-24 14:58 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2003-03-29 08:43:18 UTC


Attachments (Terms of Use)

Description John Ketchum 2003-03-28 19:27:30 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20021003

Description of problem:
Hardware: Dual processor Compaq W6000 running RH 7.2
Installed gcc version 2.95.3 20010315 (release), compiled from tarball sources
obtained from Gnu web site.  Installation directory /usr/local/bin
Used this as default compiler

Upgraded to RH 8.0,from iso's and then installed all available rpm updates,
including glibc-2.3.2-4.80, and related rpms.

I now have a Redhat 8.0 system, running the stock mp kernel

which has two versions of gcc: 2.95.3 and 3.2, and with glibc 2.3.2.

when I try to build a C++ program, using the two compilers, it compiles fine
with gcc 2.95.3, but I get a bunch of unresolved symbols in the link step with
gcc 3.2. If I add 

-lstdc++

to the link step, the symbols are resolved OK.


Version-Release number of selected component (if applicable):
glibc-2.3.2-4.80

How reproducible:
Always

Steps to Reproduce:
1.See Description
2.
3.
    

Actual Results:  linker error messages:  
new_main.o: In function `__tcf_0':
/usr/include/c++/3.2/iostream:62: undefined reference to
`std::ios_base::Init::~Init [in-charge]()'
new_main.o:/usr/include/c++/3.2/iostream:62: undefined reference to
`__gxx_personality_v0'
encode_t.o: In function `__static_initialization_and_destruction_0':
/home/johnk/projects/ofdm/warp.h:14: undefined reference to `__gxx_personality_v0'


Expected Results:  No error messages from the link step

Additional info:

#uname -a
Linux xxxx.yyyyy.com 2.4.18-14smp #1 SMP Wed Sep 4 12:34:47 EDT 2002 i686 i686
i386 GNU/Linux


#usr/bin/gcc -v
Reading specs from /usr/lib/gcc-lib/i386-redhat-linux/3.2/specs
Configured with: ../configure --prefix=/usr --mandir=/usr/share/man
--infodir=/usr/share/info --enable-shared --enable-threads=posix
--disable-checking --host=i386-redhat-linux --with-system-zlib --enable-__cxa_atexit
Thread model: posix
gcc version 3.2 20020903 (Red Hat Linux 8.0 3.


#/usr/local/bin/gcc -v
Reading specs from /usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.95.3/specs
gcc version 2.95.3 20010315 (release)

Comment 1 Jakub Jelinek 2003-03-29 08:43:18 UTC
If you link with gcc driver, then you indeed have to supply -lstdc++
(or -lsupc++ if your program isn't using STL at all).
g++ driver is what should be used to link C++ programs and shared libraries.


Note You need to log in before you can comment on or make changes to this bug.