This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
Re: problem linking with GCC 3.0 -- undefined reference to `std::codecvt<char, char, __mbstate_t>::id
I have tried many variants of building gcc 3.0 using Claudio's suggestion but
each build has ended with a version of libstdc++.a with the wrong symbol for
std::codecvt<char, char, __mbstate_t>::id.
System Configuration
---------------
Linux Mandrake 7.2 on an i686 machine.
gcc 2.95.2-12mdk
binutils 2.10.0.24-4mdk
glibc 2.1.3-18.3mdk
For the record, here is what I have tried.
1. Building gcc 3.0 with the installed tools and then building gcc 3.0
with itself.
2. Building gcc 2.95.3 with the installed tools, building gcc 3.0 with
gcc 2.95.3, and then building gcc 3.0 with itself.
3. Building gcc 2.96-85 (from the Red Hat 7.1 updates) with
the installed tools without protoizing, building gcc 3.0 with gcc 2.96,
and building gcc 3.0 with itself.
4. Building gcc 2.96-85 with the installed tools, protoizing gcc 2.96,
building gcc 3.0 with gcc 2.96, and building gcc 3.0 with itself.
After each build, I used nm and grep to determine the values of codecvt::id
in libstdc++.a, just as Claudio did.
I chose gcc 2.96-85 because Claudio said that he resolved the problem on a
Red Hat 7.1 system. Since I wanted to install gcc 2.96 under /usr/local, the
rpm files were not relocatable, and my attempt to build the rpm files from
the srpm file failed, I had to use the sources from the srpm file to build
the package manually, following the steps from the spec file as closely as
possible. (I couldn't use the binary rpm files directly since my system
lacks glibc 2.2.)
As you might imagine, my attempts to build gcc 3.0 have consumed an enormous
amount of time. I am very interested in obtaining a working version for C++
development since gcc 3.0 has so much better C++ standards compliance
compared to gcc 2.95 but I am very close to giving up entirely. If anyone
sees something I'm missing or has more insight into this problem, I would
very much appreciate additional suggestions. I am also willing to gather
whatever additional information from my system that might be necessary.
Thank you very much,
Mark