Dear all,
I have a class using some enum structure, like:
typedef enum a {
x1=0,
x2=2
} a;
class LRCConfigV1718Pulser: public TObject {
…
private:
a x;
};
I make the dictionary of the class through rootcint:
#pragma link C++ class LRCConfigV1718Pulser+;
At the linking phase, I have the following output:
main/runServer.C:301: warning: deprecated conversion from string constant to ‘char*’
g+±4.2 -I/cern/root/include -Igui -Iacq -Icomm -Isys -Icfg -Iled -Wall -g -ansi -DLINUX -lm -pthread -m32 -I/cern/root/include -L/cern/root/lib -lCore -lCint -lRIO -lNet -lHist -lGraf -lGraf3d -lGpad -lTree -lRint -lPostscript -lMatrix -lPhysics -lMathCore -lThread -pthread -lm -ldl -rdynamic -L/cern/root/lib -lCore -lCint -lRIO -lNet -lHist -lGraf -lGraf3d -lGpad -lTree -lRint -lPostscript -lMatrix -lPhysics -lMathCore -lThread -lGui -pthread -lm -ldl -rdynamic -LCAENVME/lib -lCAENVME bin/runServer.o -L./libs -lacq -lcfg -lsys -lcom -o bin/runServer.exe
./libs/libcfg.a(LRCConfigV1718Pulser.o): In function LRCConfigV1718Pulser': /home/barao/ROOT/GUI.work/LRC/cfg/LRCConfigV1718Pulser.C:16: undefined reference to
vtable for LRCConfigV1718Pulser’
/home/barao/ROOT/GUI.work/LRC/cfg/LRCConfigV1718Pulser.C:16: undefined reference to vtable for LRCConfigV1718Pulser' ./libs/libcfg.a(LRCConfigV1718Pulser_Dict.o): In function
ROOT::GenerateInitInstanceLocal(LRCConfigV1718Pulser const*)’:
/home/barao/ROOT/GUI.work/LRC/tmp/LRCConfigV1718Pulser_Dict.C:55: undefined reference to typeinfo for LRCConfigV1718Pulser' ./libs/libcfg.a(LRCConfigV1718Pulser_Dict.o): In function
LRCConfigV1718Pulser’:
/home/barao/ROOT/GUI.work/LRC/cfg/LRCConfigV1718Pulser.h:13: undefined reference to `vtable for LRCConfigV1718Pulser’
collect2: ld returned 1 exit status
Has anyone an idea of what is causing this?
Should the enum structures be included into the LinkDef.h file?
Many thanks in advance.