[ROOT] std::string ostream error

From: Justin Findlay (findlay@cosmic.utah.edu)
Date: Wed Dec 17 2003 - 22:47:31 MET


After having gotten the latest ROOT today, I discovered this problem.


//test.str.cpp
{
#include <string>
                                                                                                                             
string str( "a string" );
                                                                                                                             
cout << str << endl;
}

$ root -q test.str.cpp

Processing test.str.cpp...
Error: operator<< not defined for basic_ostream<char,char_traits<char> > FILE:test.cpp LINE:7


OK, so I rebuilt the cintdlls target:


$ cd $ROOTSYS && gmake cintdlls

...
Error: link requested for unknown typedef string::iterator FILE:cint/lib/dll_stl/str.h LINE:26
!!!Removing cint/lib/dll_stl/G__cpp_string.cxx cint/lib/dll_stl/G__cpp_string.h !!!
g++: cint/lib/dll_stl/G__cpp_string.cxx: No such file or directory
g++: no input files
g++ -shared -Wl,-soname,string.so.3.10 -O -o cint/stl/string.so.3.10 cint/lib/dll_stl/G__cpp_string.o
g++: cint/lib/dll_stl/G__cpp_string.o: No such file or directory
mv: cannot stat `cint/stl/string.so': No such file or directory
...


cint/lib/dll_stl/str.h I believe includes cint/stl/string which includes
cint/stl/_string which then includes cint/lib/prec_stl/string (where
string::iterator seems to be defined) on condition of __MAKECINT__ being
defined, which doesn't seem to be defined anywhere.


Justin



This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:17 MET