This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
RE: /lib/libstdc++.so.5: no version information available
- From: "Misra, Aveek" <amisra at netegrity dot com>
- To: 'Dan Kegel' <dank at kegel dot com>
- Cc: GCC Mailing List <gcc at gcc dot gnu dot org>
- Date: Thu, 11 Sep 2003 14:15:49 -0400
- Subject: RE: /lib/libstdc++.so.5: no version information available
Dan,
I compiled the application on the same platform RHAS 2.1. So we are
building the application using gcc 3.2.1 on a RHAS 2.1 machine and shipping
the gcc runtime libs along with the product. In fact we are building our own
gcc using the source. However when I gave the option --enable-symvers=gnu to
the configure script and subsequently gave the make command, I encountered
the following error
O1 -Wl,--version-script=linker.map -Wl,-soname -Wl,libstdc++.so.5 -o
.libs/libstdc++.so.5.0.1
/usr/bin/ld:linker.map:31: ignoring invalid character `[' in script
/usr/bin/ld:linker.map:31: parse error in VERSION script
collect2: ld returned 1 exit status
make: *** [libstdc++.la] Error 1
The line no 31 in version script
gcc-3.2.1/i686-pc-linux-gnu/libstdc++-v3/src/linker.map is
GLIBCPP_3.2 {
global:
# Names inside the 'extern' block are demangled names.
# All but the last are terminated with a semicolon.
extern "C++"
{
std::[A-Za]*; <=============================== Line 31
What do I do now?
Thanks
Aveek
-----Original Message-----
From: Dan Kegel [mailto:dank@kegel.com]
Sent: Thursday, September 11, 2003 2:33 PM
To: Misra, Aveek
Cc: 'drow@mvista.com'; GCC Mailing List
Subject: Re: /lib/libstdc++.so.5: no version information available
Misra, Aveek wrote:
> Hi Daniel/Dan,
> I have an application that links up with the gcc runtime libraries
v3.2.1
> on Red Hat Linux Advanced Server v 2.1. However when I start an executable
> it gives me the warning message
>
> smfinal: /home/smuser/install/myapp/lib/libstdc++.so.5: no version
> information available (required by
> /home/smuser/install/myapp/lib/libbtunicode.so)
>
> I saw a discussion between you regarding a similar error. However I could
> not retrieve the final solution from the discussion. I will really
> appreciate it if either of you can tell me what exactly to do to remove
this
> warning.
I see you posted this question on the gcc mailing list:
http://gcc.gnu.org/ml/gcc-help/2003-08/msg00288.html
so I'll cc that list with my answer.
Did you see the similar messages:
http://root.cern.ch/root/roottalk/roottalk03/1246.html
My guess is that you compiled this program on a different
operating system, and you're trying to run the binaries
on RHAS 2.1. If that's the case, then don't do that :-)
If you want binaries to be portable across versions
of Linux, then build it under the LSB; that's the only
way to make sure it'll work. (As a first step, you
might try linking in the C++ libraries statically
when you build your app; maybe you can do this by
using gcc instead of g++, and specifying libstdc++.a explicitly,
but I haven't tried. See also
http://www.google.com/groups?threadm=dd7a565c.0306190732.5ecb0bd4%40posting.
google.com)
If the above doesn't help, i'd say you should report the problem to Red Hat
and/or
ask on a red hat advanced server specific mailing list. RHAS is supposed
to come with pretty good support...
The fix in my situation was to specify --enable-symvers=gnu
when building gcc (see
http://sources.redhat.com/ml/crossgcc/2003-06/msg00165.html)
but since you're not building your own gcc, you really shouldn't be
running into the same problem I did, and my fix won't help.
- Dan
--
Dan Kegel
http://www.kegel.com
http://counter.li.org/cgi-bin/runscript/display-person.cgi?user=78045