Hi, it's in there (I checked with dumpbin), but it won't come out. I am a bit puzzled because a) usually stuff like that should not happen, b) aparently it only happens on Win, c) I can't find a corresponding entry in the long list of MSVC compiler bugs, d) for some reason this does not happen to the root team building the windows root binaries, e) I have had root problems which often seem to be related to static globals, too. Examples: * static globals which were supposed to initialize the dictionary were not called, * trying to build root in Win2k myself does not work as the dictionary doesn't add classes that were gSystem->LoadClass'ed (I'd guess it's a problem with dlls and their statics), * and now this guy. I'm afraid that ignoring messages like --- build/win/cxx.sh -Z7 -G5 -GR -MD -DWIN32 -D_WINDOWS -DWINVER=0x0400 -nologo -DCRTAPI1=_cdecl -DCRTAPI2=_cdecl -D_X86_=1 -D_DLL -DVISUAL_CPLUSPLUS -Iincl ude -o base/src/TApplication.o -c base/src/TApplication.cxx TApplication.cxx base/src/TApplication.cxx(49) : warning C4273: 'gApplication' : inconsistent dll linkage. dllexport assumed. --- LINK : warning LNK4049: locally defined symbol ""class TInterpreter * gInterpreter" (?gInterpreter@@3PAVTInterpreter@@A)" imported --- HelpText.o : warning LNK4197: export "?gHelpObjects@@3QBDB" specified multiple times; using first specification --- during the built of root takes its revenge here... We can reproduce these problems on different computers and by different people here at Fermilab, so it's hopefully not my stupidity or compiler version. Ideas? Maybe I should just deinstall Win and get Linux... Cheers, Axel. > -----Original Message----- > From: murat@smtp.fnal.gov [mailto:murat@smtp.fnal.gov]On Behalf > Of Pasha Murat (630)840-8237@169G > Sent: Wednesday, May 16, 2001 5:15 PM > To: Axel Naumann > Cc: Roottalk@Pcroot. Cern. Ch > Subject: Re: [ROOT] TDatabasePDG::Instance() > > > Axel: I couldn't reproduce your problem on Linux - here your example > builds just fine. TDatabasePDG::fgInstance should be resolved by libEG - > you may double check if it is true in your case by using windows > equivalent > of UNIX `nm'. > best, Pasha > Axel Naumann wrote: > > > > Hi, > > > > I'm linking root against this main: > > > > #include "TROOT.h" > > #include "TDatabasePDG.h" > > int main(int argc, char* argv[]){ > > TROOT gRoot("globRoot","global Root"); > > TDatabasePDG::Instance(); > > return 0; > > } > > > > and the linker complains about > > teststuff.obj : error LNK2001: unresolved external symbol > "protected: static > > class TDatabasePDG * TDatabasePDG::fgInstance" > > (?fgInstance@TDatabasePDG@@1PAV1@A) > > Release/teststuff.exe : fatal error LNK1120: 1 unresolved externals > > > > The link line is "libCore.lib libEG.lib". I'm using MS VC++ 6, > Win 2000; it > > happens with both Root 3.00/06 and Root 3.01/00. > > > > Any ideas about what's going on here? > > > > Cheers, Axel. >
This archive was generated by hypermail 2b29 : Tue Jan 01 2002 - 17:50:45 MET