Re: [ROOT] Usage of rootcint "-" option

From: Rene Brun (Rene.Brun@cern.ch)
Date: Thu Aug 09 2001 - 18:56:18 MEST


Hi Thomas,

Please read the information about rootcint in the Users Guide.

You should not do:
  rootcint -f TSNAnaDict.C -c TStatValues.h-
but
  rootcint -f TSNAnaDict.C -c TStatValues.h LinkDef.h
where LinkDef.h could be:

#ifdef __CINT__

#pragma link off all globals;
#pragma link off all classes;
#pragma link off all functions;

#pragma link C++ class TStatValue-;
#endif

Rene Brun


Thomas Feser wrote:
> 
> Hi all,
> 
>   I'm unfortunately having some trouble with rootcint: I think that I need
> an own (customized) streamer method, but using the "-" option yields
> 
> > rootcint -f TSNAnaDict.C -c TStatValues.h- (... other header files) LinkDef.h
> Error: cannot open file "TStatValues.h-"  FILE: LINE:0
> !!!Removing TSNAnaDict.C TSNAnaDict.h !!!
> 
>   despite the presence of TStatValues.h in the current directory.
> 
>   Without the "-" option(s) everything SEEMS to works fine.
>   However, compiling the results into a shared library (as shown in the
> "Event" example) does not work. I get various error messages like
> 
>   -     In file included from TSNAna.C:13:
>         TStatValues.h:45: `TStatValues::Streamer(TBuffer &)' has already been
>         declared in `TStatValues'
> 
>   If I remove the Streamer declaration in my class Header file (as there
> is none in Event.h) rootcint complains
> 
>   -     Class TStatValues: Streamer() not declared
>         Class TStatValues: ShowMembers() not declared
> 
>   It does, however, produce an output file, so I tried to compile the
> stuff with the following results:
> 
> gcc -c -Wall -fPIC -I/opt/root-3.01.05-etap/include TSNAna.C
> gcc -c -Wall -fPIC -I/opt/root-3.01.05-etap/include TSNAnaDict.C
> TSNAnaDict.C: In function `int G__TStatOMValues_ClassDef_6_0(G__value *,
> const char *, G__param *, int)':
> TSNAnaDict.C:117: parse error before `private'
> TSNAnaDict.C:117: cannot declare static function inside another function
> TSNAnaDict.C:117: cannot declare static function inside another function
> TSNAnaDict.C:117: parse error before `{'
> 
>   Any help would be appreciated.
> 
>   _
>   |om
> 
> ------------------------------------------------------------------------
> -     Thomas Feser                                                     -
> -                                                                      -
> -     Institut fuer Physik                phone: +49-6131-39-25165     -
> -     ETAP/AMANDA                           fax: +49-6131-39-25169     -
> -     Staudingerweg 7 / 04-426                                         -
> -     D-55099 Universitaet Mainz                                       -
> -                                                                      -
> -     Thomas.Feser@uni-mainz.de                                        -
> -     http://iphcip1.physik.uni-mainz.de/~tfeser                       -
> ------------------------------------------------------------------------



This archive was generated by hypermail 2b29 : Tue Jan 01 2002 - 17:50:56 MET