Hi Valery, Thanks for sending these corrections to compile ROOT under VC++7 Now in CVS Rene Brun On Tue, 3 Dec 2002, Faine, Valeri wrote: > Hello > Please, find the corrections to compile root under "Microsoft Studio > NET." > > It was tested to build ROOT 3.03.09 with Qt 3.1.0 > and Windows XP look and feel (see http://root.bnl.gov ) > (with no optimization though :-( > > (rrrr) [192] cvs diff -u base/inc/RConfig.h > build/win/bindexplib/bindexplib.cx > x > Index: base/inc/RConfig.h > =================================================================== > RCS file: /user/cvs/root/base/inc/RConfig.h,v > retrieving revision 1.46 > diff -u -r1.46 RConfig.h > --- RConfig.h 2002/07/29 09:20:25 1.46 > +++ RConfig.h 2002/12/04 02:07:17 > @@ -1,4 +1,4 @@ > -/* @(#)root/base:$Name: $:$Id: RConfig.h,v 1.46 2002/07/29 09:20:25 > rdm Exp $ */ > +/* @(#)root/base:$Name: v3-03-09 $:$Id: RConfig.h,v 1.46 2002/07/29 > 09:20:25 rdm Exp $ */ > > > /*********************************************************************** > ** > * Copyright (C) 1995-2002, Rene Brun and Fons Rademakers. > * > @@ -333,6 +333,9 @@ > # define ANSICPP > # define R__VECNEWDELETE /* supports overloading of new[] and > delete[] */ > # define R__PLACEMENTDELETE /* supports overloading placement delete > */ > +# if _MSC_VER > 1200 > +# define R__ANSISTREAM /* ANSI C++ Standard Library conformant > */ > +# endif > #endif > > #ifdef __MWERKS__ > Index: build/win/bindexplib/bindexplib.cxx > =================================================================== > RCS file: /user/cvs/root/build/win/bindexplib/bindexplib.cxx,v > retrieving revision 1.2 > diff -u -r1.2 bindexplib.cxx > --- bindexplib.cxx 2002/04/10 18:20:29 1.2 > +++ bindexplib.cxx 2002/12/04 02:07:17 > @@ -382,11 +382,20 @@ > */ > if (!strstr(s,"AEPAXI@Z") && !strstr(s,"real@")) > { > - fprintf(fout, "\t%s", s); > SectChar = > pSectionHeaders[pSymbolTable->SectionNumber-1].Characteristics; > - if (!pSymbolTable->Type && (SectChar & > IMAGE_SCN_MEM_WRITE)) // Read only (i.e. constants) must be exclude > - fprintf(fout, > " \t DATA"); > - fprintf(fout, "\n"); > + if (!pSymbolTable->Type && (SectChar & > IMAGE_SCN_MEM_WRITE)) { > + // Read only (i.e. constants) must be excluded > + fprintf(fout, "\t%s", s); > + fprintf(fout, " \t DATA"); > + fprintf(fout, "\n"); > + } else { > + if ( pSymbolTable->Type || !(SectChar & > IMAGE_SCN_MEM_READ)) { > + fprintf(fout, "\t%s", s); > + fprintf(fout, "\n"); > + } else { > +// printf(" strange symbol: %s \n",s); > + } > + } > } > } > } > > > My best regards, Valeri > > > -----Original Message----- > > From: owner-roottalk@pcroot.cern.ch > [mailto:owner-roottalk@pcroot.cern.ch] > > On Behalf Of Masaharu Goto > > Sent: Monday, December 02, 2002 5:22 PM > > To: Axel Naumann > > Cc: Marc Irsch; cint@pcroot.cern.ch; roottalk@pcroot.cern.ch > > Subject: [ROOT] Re: Cint and MSVC7 > > > > Hello Alex, > > > > Thank you for trying this. Let me look into this. Meanwhile, > > will you send me the modified bcvstrm.cxx? I'll try to generate > > vc7strm.cxx out from it. > > > > There is another person who is compiling Cint (pure cint) with > > VC++7.0. Sounds like he uses vcstrm.cxx and his original > > VC++6.0 setup as is. Just for your information. > > > > Thank you > > Masa Goto > > > > ======================================================= > > Marc Irsch(marc@computerspacken.org) wrote: > > > > MG> I don't think debug and release build make big difference. It is > > encouraging > > MG> that you can run Cint with VC++7.0. We have several people who > have > > MG> VC++7.0 and having problem with Cint. It will be quite helpful if > you > > MG> provide us some information. > > > > MG> - How you compiled Cint with VC++7.0? > > MG> a. with platform/visual/setup.bat script > > MG> b. with src/libcint/libcint.mdp and cint/cint.mdp > > MG> c. other > > > > The answer is c. I built my own project files on VC++ 6.0 and > > imported them on VC++ 7.0 later on. > > Worked immediately, without any modification. > > > > I didn't use the setup files with VC++ 7.0 yet. > > > > MG> - Which iostream dictionary file did you use? > > MG> a. src/libstrm.cxx > > MG> b. src/vcstrm.cxx > > MG> c. src/cbstrm.cxx > > MG> d. src/gcc3strm.cxx > > MG> e. src/fakestrm.cxx > > MG> f. other... > > > > b. > > > > MG> - I guess you compiled libcint.dll and cint.exe. How about > other > > MG> libraries > > MG> especially precompiled STL container class libraries. > > MG> stl/string.dll , stl/vector.dll , stl/list.dll , > > stl/deque.dll , > > MG> stl/map.dll , etc... > > > > Nope, sorry. Never touched these files. > > > > Regards, > > Marc > > > > > > > > ----- Original Message ----- > > From: "Axel Naumann" <axel-naumann@gmx.de> > > To: "'Masaharu Goto'" <MXJ02154@nifty.ne.jp> > > Sent: Tuesday, December 03, 2002 3:00 AM > > Subject: Cint and MSVC7 > > > > > > > Dear Masa, > > > > > > I finally sat down and tried to build CInt (well, Root's version of > > > CInt) with Microsoft Visual C++.NET. As you suggested during the > root > > > workshop I started out with the bcstream files. Those worked quite > well, > > > the only changes I had to make were > > > * remove wrappers to streambuf::sputn and sgetn (not supported by > MSVC's > > > streambuf) > > > * fstreambase and strstreambase (they are not base classes for > MSVC's > > > fstream and strstream, only iostream is base for strstream): Remove > > > class setup, method wrappers and inheritance setup > > > * remove wrapper to strstreambuf::doallocate (declared as protected > in > > > MSVC) > > > > > > > > > Now all I'm left with is > > > > > > libCint.exp : error LNK2001: unresolved external symbol > > > _CT??_R0?AVexception@@@8 > > > ??0exception@@QAE@ABV0@@Z12 > > > libCint.exp : error LNK2001: unresolved external symbol > > > _CT??_R0?AVlength_error@ > > > std@@@8??0length_error@std@@QAE@ABV01@@Z40 > > > libCint.exp : error LNK2001: unresolved external symbol > > > _CT??_R0?AVlogic_error@s > > > td@@@8??0logic_error@std@@QAE@ABV01@@Z40 > > > libCint.exp : error LNK2001: unresolved external symbol > > > _CT??_R0?AVout_of_range@ > > > std@@@8??0out_of_range@std@@QAE@ABV01@@Z40 > > > libCint.exp : error LNK2001: unresolved external symbol > > > _CTA3?AVlength_error@std > > > @@ > > > libCint.exp : error LNK2001: unresolved external symbol > > > _CTA3?AVout_of_range@std > > > @@ > > > libCint.exp : error LNK2001: unresolved external symbol > > > _TI3?AVlength_error@std@ > > > @ > > > libCint.exp : error LNK2001: unresolved external symbol > > > _TI3?AVout_of_range@std@ > > > @ > > > bin\libCint.dll : fatal error LNK1120: 8 unresolved externals > > > make: *** [lib/libCint.dll] Error 96 > > > > > > An #include <exception> doesn't solve that problem. There are two > things > > > I don't understand with that: > > > * why does the linker search for the symbol std::length_error and > not > > > length_error (without std::)? > > > * why is the exception stuff not in MSVCIRT.LIB, the multi threaded > > > dynamic link default library that supports the old iostream library > > > (instead of the new std c++ lib) > > > > > > MS states clearly that the old iostream library (e.g. <iostream.h>) > and > > > the new std c++ lib are incompatible, and only one will be used at a > > > time to search for symbols. If MSVC finds any #include<..h> (like > > > <iostream.h> or <strstream.h>) it will use the old one. Maybe > exception > > > is not part of the old library? I really don't know, all I could > find is > > > that exception _is_ part of the _new_ std c++ library, but that > still > > > doesn't tell me whether it's also in the old iostream lib. Do you > happen > > > to know that? > > > > > > Hope we can figure this one out. > > > Cheers, Axel. > > > > > > >
This archive was generated by hypermail 2b29 : Sat Jan 04 2003 - 23:51:22 MET