LinuxQuestions.org
Visit Jeremy's Blog.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Non-*NIX Forums > Programming
User Name
Password
Programming This forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.

Notices


Reply
  Search this Thread
Old 11-24-2009, 09:15 AM   #1
morty346
Member
 
Registered: Feb 2009
Posts: 52

Rep: Reputation: 15
glibc version help! Fedora 10 and WinRiver


I have Fedora 10 and have created a .so for another individual to use

He is saying that he cannot link into the .so

This is the errors he gets
Code:
libTActionReader.so: undefined reference to `std::istream& std::istream::_M_extract<float>(float&)@GLIBCXX_3.4.9'
We are assuming this is because he is using a different version of linux
He is using Wind River with glibc version 2.5

glib version I am returning with the command rpm -q glibc is
glibc-2.9-3.i686 on my Fedora 10

I need to give him this .so, without letting him compile it with the source code

My plan is to download an older version of fedora and compile it on there, however I seem not to be able to find what version has
glibc-2.5-1_WR2.0ap.i686(what he has)

On the website with some discs
http://www.linuxcd.org/view_distro.php?id_distro=118
They list kernal numbers, which seem to be close to the same number, is this the same thing?

Thank you
It is greatly appreciated
 
Old 11-24-2009, 11:59 AM   #2
knudfl
LQ 5k Club
 
Registered: Jan 2008
Location: Copenhagen DK
Distribution: PCLinuxOS2023 Fedora38 + 50+ other Linux OS, for test only.
Posts: 17,511

Rep: Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641
Quote:
@GLIBCXX_3.4.9
... has not do do with ' glibc '
( read gnu libcxx and not gnu libc(6) ).

Notice : '...LIBCXX_3.4.9 ', which is an object in
/usr/lib/libstdc++.so.6 > /usr/lib/libstdc++.so.6.0.10
( a gcc-c++-4.3.2 / libstdc++-4.3.2 file ).

You can try out your created library with ldd :
ldd <library>.so , to find out a little more about,
what is going on.

Linking to the lib ? The libstdc++.so.6(.0.10) must be included,
AFAIK. May be rename to something else not to confuse things >
> something.so ( A similar file libstdc++.so.6 may be present already.)
If it will work at all on the probably older WindRiver ?
.....

Last edited by knudfl; 11-24-2009 at 12:26 PM.
 
Old 11-24-2009, 12:41 PM   #3
morty346
Member
 
Registered: Feb 2009
Posts: 52

Original Poster
Rep: Reputation: 15
Quote:
Originally Posted by knudfl View Post
... has not do do with ' glibc '
( read gnu libcxx and not gnu libc(6) ).

Notice : '...LIBCXX_3.4.9 ', which is an object in
/usr/lib/libstdc++.so.6 > /usr/lib/libstdc++.so.6.0.10
( a gcc-c++-4.3.2 / libstdc++-4.3.2 file ).

You can try out your created library with ldd :
ldd <library>.so , to find out a little more about,
what is going on.

Linking to the lib ? The libstdc++.so.6(.0.10) must be included,
AFAIK. May be rename to something else not to confuse things >
> something.so ( A similar file libstdc++.so.6 may be present already.)
If it will work at all on the probably older WindRiver ?
.....
knudf,
I appreciate your help, however you will need to go a little slower with me. I am not comfortable in this OS.

What I understand from your reply is that the linker issue he is seeing is not an issue with the glibc version, instead it is ?

Quote:
"read gnu libcxx and not gnu libc(6)"
I don't have a clue what you are talking about

ldd i am assuming is a command I can use in the terminal

This is what is returned
linux-gate.so.1 => (0x00b09000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00c3d000)
libm.so.6 => /lib/libm.so.6 (0x00fc7000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00901000)
libc.so.6 => /lib/libc.so.6 (0x00239000)
/lib/ld-linux.so.2 (0x00b80000)

I think I am seeing the file you speak of, libstdc++.so.6 should that be to something else? or is that what I am suppose to see?

also to note he told me that he is getting an undefined referece to ostream as well as istream now
 
Old 11-24-2009, 02:48 PM   #4
knudfl
LQ 5k Club
 
Registered: Jan 2008
Location: Copenhagen DK
Distribution: PCLinuxOS2023 Fedora38 + 50+ other Linux OS, for test only.
Posts: 17,511

Rep: Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641
Quote:
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00c3d000)
Yes, that's it.
The problem is that your client's WindRiver may have a library
with the same name.
Same name exists for libstdc++ for gcc-c++ 4.1.x .

The object "..LIBCXX_3.4.9" is only found from version 4.3.x
> gcc-4.3.x + libstdc++-4.3.x .

So you will probably have to compile the lib on an older OS.
It would be nice to know, which versions of the above being
present on the WindRiver OS, to be able to give a good advice.
.....

GLIBCXX means Gnu libCXX , where CXX means c++ .
.....

Last edited by knudfl; 11-24-2009 at 02:52 PM.
 
Old 11-24-2009, 03:35 PM   #5
morty346
Member
 
Registered: Feb 2009
Posts: 52

Original Poster
Rep: Reputation: 15
Quote:
Originally Posted by knudfl View Post
Yes, that's it.
The problem is that your client's WindRiver may have a library
with the same name.
Same name exists for libstdc++ for gcc-c++ 4.1.x .

The object "..LIBCXX_3.4.9" is only found from version 4.3.x
> gcc-4.3.x + libstdc++-4.3.x .

So you will probably have to compile the lib on an older OS.
It would be nice to know, which versions of the above being
present on the WindRiver OS, to be able to give a good advice.
.....

GLIBCXX means Gnu libCXX , where CXX means c++ .
.....

He is using version 2.0.2 (2.0 with sp2).
 
Old 11-24-2009, 03:42 PM   #6
knudfl
LQ 5k Club
 
Registered: Jan 2008
Location: Copenhagen DK
Distribution: PCLinuxOS2023 Fedora38 + 50+ other Linux OS, for test only.
Posts: 17,511

Rep: Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641
Quote:
He is using version 2.0.2 (2.0 with sp2).
You will have to supply the information about gcc-c++ files,
if any of these at all are present :
Please ask for the reply from the commands

gcc -v

g++ -v

ls /usr/lib/libstdc++*

.. And info about the 'glibc' version.
.....
 
Old 11-24-2009, 03:52 PM   #7
morty346
Member
 
Registered: Feb 2009
Posts: 52

Original Poster
Rep: Reputation: 15
glibc version =
root@target:/root> rpm -q glibc
glibc-2.5-1_WR2.0ap.i686

And I have asked him for the rest of the information
 
Old 11-24-2009, 08:14 PM   #8
morty346
Member
 
Registered: Feb 2009
Posts: 52

Original Poster
Rep: Reputation: 15
Heres what I got from him



root@target:/root> ls /usr/lib/libstdc++*
/usr/lib/libstdc++.so.6 /usr/lib/libstdc++.so.6.0.8
The others are a little tricky. There's no compiler on the target so I have to make sure to do the version on the correct gcc/g++ that does the cross-compile. I believe these are correct:

C:\WindRiver\gnu\4.1-wrlinux-2.0\x86-win32\bin>i586-wrs-linux-gnu-gcc.exe -v
Using built-in specs.
Target: i586-wrs-linux-gnu
Configured with: /scratch/joseph/wrs/4.1/src/gcc-4.1/configure --build=i686-pc-linux-
gnu --host=i686-mingw32 --target=i586-wrs-linux-gnu --enable-threads --disable-libmud
flap --disable-libssp --disable-libgomp --disable-libstdcxx-pch --with-cpu=generic --
enable-targets=all --with-gnu-as --with-gnu-ld --enable-languages=c,c++ --enable-shar
ed --enable-symvers=gnu --enable-__cxa_atexit --with-pkgversion='Wind River Linux Sou
rcery G++ 4.1-91' --with-bugurl=support@windriver.com --disable-nls --prefix=/opt/win
driver/wrlinux/ia32 --with-sysroot=/opt/windriver/wrlinux/ia32/i586-wrs-linux-gnu/lib
c --with-build-sysroot=/scratch/joseph/wrs/4.1/ia32/install/host-i686-mingw32/i586-wr
s-linux-gnu/libc --with-libiconv-prefix=/scratch/joseph/wrs/4.1/ia32/obj/host-libs-4.
1-91-i586-wrs-linux-gnu-i686-mingw32/usr --with-license=/scratch/joseph/wrs/4.1/ia32/
obj/host-libs-4.1-91-i586-wrs-linux-gnu-i686-mingw32/usr --with-csl-license-version=2
0080107 --with-csl-license-feature=gcc_IA32_Wind_River_Linux --enable-poison-system-d
irectories
Thread model: posix
gcc version 4.1.2 (Wind River Linux Sourcery G++ 4.1-91)


C:\WindRiver\gnu\4.1-wrlinux-2.0\x86-win32\bin>i586-wrs-linux-gnu-g++.exe -v
Using built-in specs.
Target: i586-wrs-linux-gnu
Configured with: /scratch/joseph/wrs/4.1/src/gcc-4.1/configure --build=i686-pc-linux-
gnu --host=i686-mingw32 --target=i586-wrs-linux-gnu --enable-threads --disable-libmud
flap --disable-libssp --disable-libgomp --disable-libstdcxx-pch --with-cpu=generic --
enable-targets=all --with-gnu-as --with-gnu-ld --enable-languages=c,c++ --enable-shar
ed --enable-symvers=gnu --enable-__cxa_atexit --with-pkgversion='Wind River Linux Sou
rcery G++ 4.1-91' --with-bugurl=support@windriver.com --disable-nls --prefix=/opt/win
driver/wrlinux/ia32 --with-sysroot=/opt/windriver/wrlinux/ia32/i586-wrs-linux-gnu/lib
c --with-build-sysroot=/scratch/joseph/wrs/4.1/ia32/install/host-i686-mingw32/i586-wr
s-linux-gnu/libc --with-libiconv-prefix=/scratch/joseph/wrs/4.1/ia32/obj/host-libs-4.
1-91-i586-wrs-linux-gnu-i686-mingw32/usr --with-license=/scratch/joseph/wrs/4.1/ia32/
obj/host-libs-4.1-91-i586-wrs-linux-gnu-i686-mingw32/usr --with-csl-license-version=2
0080107 --with-csl-license-feature=gcc_IA32_Wind_River_Linux --enable-poison-system-d
irectories
Thread model: posix
gcc version 4.1.2 (Wind River Linux Sourcery G++ 4.1-91)
 
Old 11-25-2009, 03:24 AM   #9
knudfl
LQ 5k Club
 
Registered: Jan 2008
Location: Copenhagen DK
Distribution: PCLinuxOS2023 Fedora38 + 50+ other Linux OS, for test only.
Posts: 17,511

Rep: Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641
OK, I'll bet that the /usr/lib/libstdc++.so.6.0.8
is from c++-4.1.x and you will as such have to
compile things for that system on e.g CentOS 5.

CentOS 5.4 ( = Redhat EL 5.4 and Scientific SL5x)
has gcc-4.1.2 / c++ (g++) -4.1.2 / glibc-2.5 .

Objects made on Fedora 10 having glibc-2.9 will
not work on Linux's with an older one anyway.
Glibc-<version> is the first thing to be aware
of when you compile for other systems.
.....
 
Old 11-25-2009, 06:33 AM   #10
morty346
Member
 
Registered: Feb 2009
Posts: 52

Original Poster
Rep: Reputation: 15
Quote:
My plan is to download an older version of fedora and compile it on there, however I seem not to be able to find what version has
glibc-2.5-1_WR2.0ap.i686(what he has)
Okay,
So it sounds like you pretty much came to the same conclusion that we already had.
So back to my original idea, I asked about Fedora and how to figure out what version I would need.

I have came to the conclusion that fedora 7 should do the trick.

I looked into the OS you mentioned, however it doesn't sound like that is going to cut it. It is for more of a server based OS, not a development environment
 
Old 11-25-2009, 10:52 AM   #11
knudfl
LQ 5k Club
 
Registered: Jan 2008
Location: Copenhagen DK
Distribution: PCLinuxOS2023 Fedora38 + 50+ other Linux OS, for test only.
Posts: 17,511

Rep: Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641
Fedora 7 cannot be used, has glibc-2.6
And Fedora 7 has been unsupported since July 2008.

Based on Fedora 6 , the long term supported versions :
CentOS 5.4 and the equal copy of RedhatEL5, Scientific Linux SL5.x
forms excellent development environments.
I use these two for development only.
Comes with full Window Manager setup ( Gnome or KDE 3.x )
and have access to 11,000+ packages.
.....
 
Old 11-30-2009, 07:45 AM   #12
morty346
Member
 
Registered: Feb 2009
Posts: 52

Original Poster
Rep: Reputation: 15
Quote:
Originally Posted by knudfl View Post
Fedora 7 cannot be used, has glibc-2.6
And Fedora 7 has been unsupported since July 2008.

Based on Fedora 6 , the long term supported versions :
CentOS 5.4 and the equal copy of RedhatEL5, Scientific Linux SL5.x
forms excellent development environments.
I use these two for development only.
Comes with full Window Manager setup ( Gnome or KDE 3.x )
and have access to 11,000+ packages.
.....
So again, I would like to know HOW you figured out that fedora 7 has glibc-2.6
This was the original questions... how do i figure out which glibc a OS has...

I would prefer a fedora version BECAUSE I am not very familiar with linux,a nd just want something that is going to be quick for me to set up and learn

I will try Fedora 6 seeing how you say CentOS is based on it, then I will assume it must have the same glibc version
 
Old 12-01-2009, 03:58 AM   #13
knudfl
LQ 5k Club
 
Registered: Jan 2008
Location: Copenhagen DK
Distribution: PCLinuxOS2023 Fedora38 + 50+ other Linux OS, for test only.
Posts: 17,511

Rep: Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641Reputation: 3641
Based on Fedora 6 means : No difference in appearence
and daily use.
CentOS 5.4 is of course easier to use :
It is updated for todays hardware, it is supported.
Fedora 6 : Died years ago, no packages, no support, ( no help ).
Quote:
I would like to know HOW you figured out that fedora 7 has glibc-2.6
1) Say you once had / have an install DVD, Fedora 6 :
Index it to a text file, 2240 lines packages.
( find /media/Fedora6-DVD -name "*" > 6Fedora6-filelist ).
Save the file for ever in "Index"
' grep glibc 6Fedora6-filelist ' → glibc-2.5..., etc.
and
' grep glibc 7Fedora7-filelist ' → glibc-2.6...

2) Access to internet ? Possibly.
http://archives.fedoraproject.org/pu.../fedora/linux/
Fedora 1..6
http://archives.fedoraproject.org/pu...ra/linux/core/
7..8
http://archives.fedoraproject.org/pu...inux/releases/
9..13
http://download.fedora.redhat.com/pu...inux/releases/
Updates 10-11-12
http://download.fedora.redhat.com/pu...linux/updates/

Some of those pages are huge, but ' wget <the-right-URL> '
will save an index.html.

' html2txt index.html ' creates a text file.
So that way all information is always present ...
.. to look up any package name in a second.
.....
grep glibc x54-CentOS-5.4-filelist.txt → glibc-2.5....
or
http://mirror.centos.org/centos/

And bookmark all URL's, save at Xmarks,
can be accessed from any Firefox browser.
.....

Last edited by knudfl; 12-01-2009 at 08:06 AM.
 
Old 12-01-2009, 11:07 AM   #14
gnashley
Amigo developer
 
Registered: Dec 2003
Location: Germany
Distribution: Slackware
Posts: 4,928

Rep: Reputation: 612Reputation: 612Reputation: 612Reputation: 612Reputation: 612Reputation: 612
To identify your glibc version run:
/lib/libc.so.6
 
Old 12-02-2009, 06:59 AM   #15
morty346
Member
 
Registered: Feb 2009
Posts: 52

Original Poster
Rep: Reputation: 15
Quote:
Originally Posted by gnashley View Post
To identify your glibc version run:
/lib/libc.so.6
I want to know versions of non-installed OS
 
  


Reply



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
glibc version help! Fedora 10 morty346 Linux - Newbie 1 11-24-2009 02:56 PM
Program aborted on CentOS with glibc-2.5 and not on Fedora with glibc 2.9 Thiyagarajan R Linux - General 1 06-16-2009 11:58 AM
i have an error when i try to install Glibc(5.7. Glibc-2.8-20080929, Version 6.4) robineecc1 Linux From Scratch 0 12-14-2008 11:45 AM
glibc... What version? WayneS Linux - Newbie 1 09-13-2006 06:39 PM
glibc version kpachopoulos Linux - Newbie 4 09-09-2004 08:23 AM

LinuxQuestions.org > Forums > Non-*NIX Forums > Programming

All times are GMT -5. The time now is 05:12 PM.

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
Open Source Consulting | Domain Registration