Problem running rootcint (cwchar)

Hello,
I’m trying to use rootcint in a program

because of a simple LinkDef.h file:

[code]#ifdef CINT
#include “TLorentzVector.h”
#include “TCut.h”
#include

#pragma link C++ class vector+;
#pragma link C++ class vector+;
#endif[/code]

However the process fails:

[code] g++ -E -C “-DG__LINUX=1” “-DG__GNUC=3” “-DG__GNUC_MINOR=4” “-DG__GNUC_VER=3004” “-DG__GLIBC=2” “-DG__GLIBC_MINOR=3” “-DG__x86_64=1” “-DG__amd64=1” “-DG__ROOT=1” “-DG__NATIVELONGLONG=1” “-D__GNUC__=3” “-D__GNUC_MINOR__=4” “-D__x86_64__=1” “-DR__B64” “-DTRUE=1” “-DFALSE=0” “-Dexternalref=extern” “-DSYSV” “-D__MAKECINT__” “-DG__CINTVERSION=50170000” -DG__EXTERNAL_CPP -I. -I. -IGoodRunsLists -ISelection -IUtils -IYaml -I/home/manip/mnt/atlas/software/root_v5.26.00/include -I/usr/include/libxml2 -I/net/dapserv1/home/manip/mnt/atlas/software/root_v5.26.00/include -I/net/dapserv1/home/manip/mnt/atlas/software/root_v5.26.00/src -D__CINT__ -I/net/dapserv1/home/manip/mnt/atlas/software/root_v5.26.00/cint/cint/include -I/net/dapserv1/home/manip/mnt/atlas/software/root_v5.26.00/cint/cint/stl -I/net/dapserv1/home/manip/mnt/atlas/software/root_v5.26.00/cint/cint/lib /tmp/7RQQSM_cint.cxx > /tmp/InRF2P_cint
Dans le fichier inclus à partir de /home/manip/mnt/atlas/software/root_v5.26.00/include/Rtypes.h:24,
à partir de /home/manip/mnt/atlas/software/root_v5.26.00/include/TRefCnt.h:25,
à partir de /home/manip/mnt/atlas/software/root_v5.26.00/include/TString.h:32,
à partir de ./Selection/AnalysisNtuple.h:21,
à partir de /tmp/7RQQSM_cint.cxx:1:
/home/manip/mnt/atlas/software/root_v5.26.00/include/RConfig.h:218:1: attention : “R__B64” redefined
:15:1: attention : this is the location of the previous definition
Dans le fichier inclus à partir de /usr/lib/gcc/x86_64-redhat-linux/3.4.6/…/…/…/…/include/c++/3.4.6/bits/postypes.h:46,
à partir de /usr/lib/gcc/x86_64-redhat-linux/3.4.6/…/…/…/…/include/c++/3.4.6/bits/char_traits.h:47,
à partir de /usr/lib/gcc/x86_64-redhat-linux/3.4.6/…/…/…/…/include/c++/3.4.6/ios:46,
à partir de Yaml/parser.h:9,
à partir de Yaml/yaml.h:7,
à partir de Utils/loadPar.h:11,
à partir de ./Selection/AnalysisNtuple.h:32,
à partir de /tmp/7RQQSM_cint.cxx:1:
/net/dapserv1/home/manip/mnt/atlas/software/root_v5.26.00/cint/cint/include/cwchar:9:20: cwchar.h : Aucun fichier ou répertoire de ce type
Error: external preprocessing failed. :0:
!!!Removing Selection/dict_Selection.cc Selection/dict_Selection.h !!!

freetemp 0:(NULL)0x(nil)
Error: rootcint: error loading headers…[/code]

Indeed cwchar in cint/cint/include points to a non-existent cwchar.h.

My machine is a SL4, with ROOT 5.26 installed.

Any ideas to solve this ?

Nicolas

Hi,

if all you want is the dictionary of vector+ and vector+ then just pass no file at all to CINT, only the LinkDef.h: rootcint -f dict.cxx -c LinkDef.h
.
Cheers, Axel.

It works perfectly. Many thanks.

Nicolas