LinuxQuestions.org
Help answer threads with 0 replies.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Newbie
User Name
Password
Linux - Newbie This Linux forum is for members that are new to Linux.
Just starting out and have a question? If it is not in the man pages or the how-to's this is the place!

Notices


Reply
  Search this Thread
Old 12-06-2007, 08:23 AM   #1
babu198649
Member
 
Registered: Oct 2007
Posts: 160

Rep: Reputation: 30
Question what is libstdc++.so file


hi
what is libstc++.so file?
does it belongs to gcc.(ie )does it ships with gcc compiler

what for different versions of libstdc++.so(such as libstdc++.so.6)are for.

does all the versions of libstdc++.so.x should point to libstdc++.so

when does a link is said to be broken and what is the meaning of broken link.

why these files are always associated with linker problems.

thanks
 
Old 12-06-2007, 08:47 AM   #2
acid_kewpie
Moderator
 
Registered: Jun 2001
Location: UK
Distribution: Gentoo, RHEL, Fedora, Centos
Posts: 43,417

Rep: Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975
libstdc++ is the standard c++ library. ie.. that's the definition of standard library functions for all code written in c++. the different versions are just that... versions, so you could need a v5 or v6 library these days depending on the code you are writing. generally you'd only require a version 5 library for older precompiled packages. anything new would just be linked against the standard version 6 object. they are often related to linker issues as that's the first and most important library for c++.
 
Old 12-06-2007, 11:22 PM   #3
babu198649
Member
 
Registered: Oct 2007
Posts: 160

Original Poster
Rep: Reputation: 30
thank u acid_kewpie
now i have Qt and vsipl++ libraries(both are c++ libraries)

but i can compile Qt without any problem


but linking vsipl++ libraries creates problem
it gives the following message

[bharani@localhost examples]$ ./example1 ./example1: /usr/lib/libstdc++.so.6: version `GLIBCXX_3.4.9' not found (required by ./example1)
 
Old 12-07-2007, 12:29 AM   #4
dwhitney67
Senior Member
 
Registered: Jun 2006
Location: Maryland
Distribution: Kubuntu, Fedora, RHEL
Posts: 1,533

Rep: Reputation: 335Reputation: 335Reputation: 335Reputation: 335
Did you compile the vsipl++ library on your system, or did you just download the binaries from some website? You may want compile it (the source code) on your local system as you did Qt.

I should further add that the last statement in your post does not offer many clues at all as to which example you are attempting to run. Is it a Qt example? Or something you created? If the latter, it might be helpful to see how you compiled the executable example1.

Last edited by dwhitney67; 12-07-2007 at 12:31 AM.
 
Old 12-07-2007, 02:14 AM   #5
acid_kewpie
Moderator
 
Registered: Jun 2001
Location: UK
Distribution: Gentoo, RHEL, Fedora, Centos
Posts: 43,417

Rep: Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975
you'd need to upgrade glibc to 3.4.9 to link against that. note that the libstdc++ version (6.0.3 etc...) is a different versioning scheme to the glibc package itself...
 
Old 12-07-2007, 05:34 AM   #6
babu198649
Member
 
Registered: Oct 2007
Posts: 160

Original Poster
Rep: Reputation: 30
yes dwhitney67 u r right .

before installing vsipl++ binary package i compiled and installed (usual procedure ./configure,make,make install) the vsipl++ library(source code package) it worked fine .

but after installing the binary package linkage error occured(i just tried installing the binary package as i had never tried installing any binary package)

Quote:
Is it a Qt example? Or something you created?
No.no problem with Qt. What i meant was both Qt and vsipl++ libraries are C++ libraries but Qt works fine whereas vsipl ++ gives linking error.


Quote:
you'd need to upgrade glibc to 3.4.9 to link against that. note that the libstdc++ version (6.0.3 etc...) is a different versioning scheme to the glibc package itself...
where to get glibc and what are the commands needed

Last edited by babu198649; 12-09-2007 at 11:57 PM.
 
Old 09-16-2008, 09:17 AM   #7
douglasheld
LQ Newbie
 
Registered: Oct 2004
Distribution: Fedora 2, OSX, Solaris 8
Posts: 1

Rep: Reputation: 0
Where to get glibc

"where to get glibc and what are the commands needed?"


If you can supply the Linux distribution you are running, and its version the people on this forum can tell you how to install glibc.
 
Old 09-16-2008, 10:13 AM   #8
acid_kewpie
Moderator
 
Registered: Jun 2001
Location: UK
Distribution: Gentoo, RHEL, Fedora, Centos
Posts: 43,417

Rep: Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975Reputation: 1975
douglasheld, welcome to LQ, but i'd advise against resurrecting threads which haven't been touched for more than 6 months.
 
Old 09-16-2008, 08:53 PM   #9
sundialsvcs
LQ Guru
 
Registered: Feb 2004
Location: SE Tennessee, USA
Distribution: Gentoo, LFS
Posts: 8,326
Blog Entries: 4

Rep: Reputation: 2841Reputation: 2841Reputation: 2841Reputation: 2841Reputation: 2841Reputation: 2841Reputation: 2841Reputation: 2841Reputation: 2841Reputation: 2841Reputation: 2841
Here's a high-level snapshot of the most important ideas here ...
  1. All programs rely upon the existence of many libraries, which contain pre-written, presumably well-tested subroutines that the programs can therefore simply "rely upon."
  2. In the Linux/Unix systems, you can easily have multiple versions of the same library installed at the same time. Through a simple system of file-names ("that's what the '.6' is for..."), the libraries can be found without conflict by the programs that need them. Programs can be very-generic or very-specific as to their requirements. The library files themselves also contain version-information so the linker can be sure that the library-file it has found is compatible.
  3. One program might compile just fine, because the version it needs is available, while another program doesn't.
  4. A "broken link" occurs when the linker cannot find a compatible subroutine in a compatible library to fulfill the program's stated requirements.
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
error while loading shared libraries: libstdc++.so.5: cannot open shared object file: Franziss Linux - Newbie 10 06-28-2010 05:47 AM
FC4 doesn't have libstdc++.so.5 but libstdc++.so.6 baosheng Fedora 14 04-06-2008 10:08 AM
Need older libraries: libstdc++-3.2.4, libstdc++-libc6.-1.so.2, & compat-2004.7.1 al_moline SUSE / openSUSE 2 10-19-2007 07:01 AM
Missing file libstdc++-libc6.1-1.so.2 kantor_98 Linux - Newbie 3 06-06-2007 04:39 AM
mismatched rpm versions of libstdc++ and libstdc++-devel pcweirdo Linux - Software 8 11-29-2004 09:30 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Newbie

All times are GMT -5. The time now is 02:36 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration