This is the mail archive of the mailing list for the libstdc++ project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Undefined Reference to 'std::cout' etc.

Hi everyone,

	I just upgraded to 2.90.8 and am having all kinds of problems getting my
code to  link with the new libraries.  I've done everything I can think of,
so I'm falling back to the big guns :)  I'm using gcc/g++ 2.95.2, and am
trying to build a rather large C++ code base.  I'm using *lots* of STL (the
principle reason I upgraded) and per company standards everything is
fully-qualified (e.g. std::cout).
	I built 2.95.2 and 2.90.8 together, and are installed in /usr.  I just
followed the build instructions on the site, with no special flags other
than --prefix.  The first problem I noticed was the libstdc++ testsuite
failed on virtually every test (except for maybe two or three - I'll post
the results at the end of the email).  Ok, not a good sign, but I started
the compile of my code anyway.  The compile went through OK (minus a few
fixes) but as soon as I get to the linker I see *lots* of errors, all
pertaining to std::.  Everything is built with -fhonor-std, so I'm a little
confused by this.  The errors pretty much seem to cover anything in the
std:: namespace (e.g. cin/cout, std_iostream, basic_string, terminate,

	The LD_LIBRARY_PATH is set to /usr/lib, and here's a sample of the build

	g++ -c
/xxxxxxx/H245Signaling.cpp -g -O0 -Wall -fhonor-std -DANSI_PROTO -DFUNCTION_
BASED -DLINUX_BUILD -STATIC_SYMS .... bunch of include dirs ....

	and the linker error:

	/xxxx/xxxx/xxx/H245Signaling.cpp:290: undefined reference to 'std::cout'
	/xxxx/xxxx/xxx/H245Signaling.cpp:290: undefined reference to
'std::basic_ostream<char, std::char_traits<char> > & std::operator
<<<std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char>
> &, char const *)'

	The code it's failing on is pretty simple:

int SomeClass::SomeFunc()
	std::cout << "xxxxyyyy" << std::endl;

	One last thing - when I started the initial compiles, I would get errors
from std_limits.h about min() and max().  I don't have the exact errors in
front of me (I can reproduce them if needed) but they said something like
"...min() takes 0 args...", and I wasn't using min()/max() directly.  I
worked around them, but I thought I'd mention it anyway.

	If anyone could help me figure this one out, I'd be *very* grateful
(deadlines looming ominously...).  I've tried just about every combination
of flags and builds I can think of, and scoured the mailing list for hints,
but to no avail.  If more information is needed, just let me know.



Christopher Konvalin
Senior Software Developer
IP Telephony Group
Comuniq Inc., Rapid City, SD, USA
Phone: 605-348-7650
Fax:   605-348-4030

p ctime etime text   data   total  name
+ 3     0.000 165028 30570  900172 17_intro/
- 1     0.000 0      0      0      17_intro/
- 1     0.000 0      0      0      17_intro/
+ 1     0.000 170580 30677  939735 17_intro/
+ 0     0.000 170612 30805  970487 18_support/

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]