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