Dear all rooters!
I'm here to ask your help to solve this nasty problem. I'm writing a GUI using (Qt) designer for my Root application. I followed the instructions in the documentation on how to build the root Dictionary, but when I run make I got a lot of errors also compiling the following very simple example:
// in file TProva.h
// -----------------------
#ifndef TPROVA_H
#define TPROVA_H
#include “Rtypes.h”
#include “qpushbutton.h”
class QPushButton;
class TVirtualPad;
class TProva {
private:
QPushButton * fMyButton;
public:
TProva();
virtual ~TProva();
};
#endif
// -------------------------------
// in file TProva.cxx
// ---------------------
#include “TProva.h”
TProva::TProva() {
fMyButton = new QPushButton(“prova”,0);
}
TProva::~TProva() { delete fMyButton; }
//…
// in file LinkDef.h
// -----------------------
#ifdef CINT
#pragma link off all globals;
#pragma link off all classes;
#pragma link off all functions;
#pragma link C++ class TProva;
#endif
// ----------------------------
// in file prova.pro
// --------------------
TEMPLATE = lib dll thread
HEADERS += TProva.h
SOURCES += TProva.cxx
CREATE_ROOT_DICT_FOR_CLASSES = ${HEADERS} LinkDef.h
include("$(ROOTSYS)/include/rootcint.pri")
// ------------------------------
when I type “qmake prova.pro” I got this warning
WARNING: Failure to find: Dict.cxx
and when I type “make” I got a lot of errors during the Dictionary (Dict.cxx) generation:
/cern/root/bin/rootcint -f Dict.cxx -c -I/usr/lib/qt-3.3/mkspecs/default -I. -I"/cern/root/include" -I/usr/lib/qt-3.3/include TProva.h LinkDef.h
Error: Illegal pointer operation (tovalue) /usr/lib/qt-3.3/include/qglobal.h:148:
Error: operator ‘/’ divided by zero /usr/lib/qt-3.3/include/qglobal.h:148:
Syntax Error: defined(_SCO_DS)/SCOOpenServer5+GCC/ /usr/lib/qt-3.3/include/qglobal.h:148:
Error: Illegal pointer operation (tovalue) /usr/lib/qt-3.3/include/qglobal.h:150:
Error: operator ‘/’ divided by zero /usr/lib/qt-3.3/include/qglobal.h:150:
Syntax Error: defined(USLC)/allSCOplatforms+UDKorOUDK/ /usr/lib/qt-3.3/include/qglobal.h:150:
…
…
Limitation: length of one function argument be less than 1024 /usr/lib/qt-3.3/include/qstring.h:751:
Use temp variable as workaround.
Error: improper lvalue /usr/lib/qt-3.3/include/qstring.h:751:
make: *** [Dict.cxx] Segmentation fault
make: *** Deleting file `Dict.cxx’
Can you tell me something? I’m using Root v5-10-0 and Qt-3-3-4.
Thanks in advance…
Antonio


need the RootCint dictionary then?
/ However I am willing to assiste you to achieve your goal, I have to know your goal then 