rete
January 29, 2014, 3:19pm
1
Dear all,
I’m compiling a piece of code with cmake scripts in order to generate a root dictionnary when i get this error :
$ make
[ 2%] Generating ROOT dictionary for LCAmore library.
Limitation: Items in header must be separately specified source/include/lcamor/MonitoringException.hh:92:
Warning: Error occurred during reading source files
Warning: Error occurred during dictionary source generation
!!!Removing build/source/src/LCAmoreDict.cc build/source/src/LCAmoreDict.h !!!
Error: /home/remi/ilcsoft/v01-17-03/root/5.34.05/bin/rootcint: error loading headers...
make[2]: *** [source/src/LCAmoreDict.cc] Erreur 1
make[1]: *** [source/CMakeFiles/LCAmore.dir/all] Erreur 2
make: *** [all] Erreur 2
$
I put the pieces of code attached to this post, 2 classes with only header files.
I have no idea where it can come from. An idea ?
Cheers,
RE
ExceptionLevel.hh (2.29 KB)
MonitoringException.hh (2.21 KB)
Danilo
January 31, 2014, 6:48am
2
Hi,
what is the command you use to generate the dictionary?
Cheers,
Danilo
rete
January 31, 2014, 9:08am
3
Hi,
I isued this line in the CMakeLists.txt :
add_custom_command( OUTPUT ${LCAmore_BINARY_DIR}/source/src/LCAmoreDict.cc
COMMAND mkdir -p ${ROOT_DICT_OUTPUT_DIR}
COMMAND ${ROOT_CINT_WRAPPER} -v4 -f ${LCAmore_BINARY_DIR}/source/src/LCAmoreDict.cc -c ${DICT_INCLUDE_DIRS} -p ${LIB_HEADERS_PKG} ${LINK_DEF_FILE}
COMMENT "Generating ROOT dictionary for LCAmore library."
DEPENDS ${LIB_HEADERS_PKG}
)
that corresponds in the terminal to this command :
[ 2%] Generating ROOT dictionary for LCAmore library.
cd /home/remi/git/LCAmore/build/source && mkdir -p /home/remi/git/LCAmore/build/source/src
cd /home/remi/git/LCAmore/build/source && LD_LIBRARY_PATH=/home/remi/ilcsoft/v01-17-03/root/5.34.05/lib:/home/remi/dim/dim/linux:/home/remi/ilcsoft/v01-17-03/geant4/9.6.p01/lib:/home/remi/ilcsoft/v01-17-03/DD4hep/v00-04/lib:/home/remi/ilcsoft/v01-17-03/slic/v03-01-03/build/lib:/home/remi/ilcsoft/v01-17-03/lcdd/v03-02-00/lib:/home/remi/ilcsoft/v01-17-03/gdml/v03-00-00/lib:/home/remi/ilcsoft/v01-17-03/heppdt/3.04.01/lib:/home/remi/ilcsoft/v01-17-03/GBL/V01-15-03/lib:/home/remi/ilcsoft/v01-17-03/FastJet/2.4.2/lib:/home/remi/ilcsoft/v01-17-03/PandoraPFANew/v00-12/lib:/home/remi/ilcsoft/v01-17-03/gsl/1.14/lib:/home/remi/ilcsoft/v01-17-03/CondDBMySQL/CondDBMySQL_ILC-0-9-6/lib:/home/remi/ilcsoft/v01-17-03/KalTest/v01-05-03/lib:/home/remi/ilcsoft/v01-17-03/gear/v01-03-01/lib:/home/remi/ilcsoft/v01-17-03/root/5.34.05/lib:/home/remi/ilcsoft/v01-17-03/lcio/v02-04-02/lib:/home/remi/ilcsoft/v01-17-03/ilcutil/v01-01/lib:/home/remi/ilcsoft/v01-17-03/CLHEP/2.1.3.1/lib:/home/remi/ilcsoft/v01-17-03/QT/4.7.4/lib:/home/remi/ilcsoft/v01-17-03/xercesc/3.1.1/lib:/home/remi/ilcsoft/v01-17-03/mysql/usr/lib64/mysql:/home/remi/ilcsoft/v01-17-03/mysql/usr/lib64:/home/remi/ilcsoft/v01-17-03/mysql/usr/lib/mysql:/home/remi/ilcsoft/v01-17-03/mysql/usr/lib:/home/remi/igprof/lib:/usr/local/cuda-5.5/lib:/home/remi/crystalspace/crystalspace-src-2.0:/usr/local/src/usr/lib:/usr/local/lib/MyLib::/home/remi/ilcsoft/SDHCAL/Baboon/lib:/home/remi/ilcsoft/SDHCAL/MarlinBaboon/lib /home/remi/ilcsoft/v01-17-03/root/5.34.05/bin/rootcint -v4 -f /home/remi/git/LCAmore/build/source/src/LCAmoreDict.cc -c -I/home/remi/ilcsoft/v01-17-03/root/5.34.05/include -I/home/remi/ilcsoft/v01-17-03/lcio/v02-04-02/include -I/home/remi/ilcsoft/v01-17-03/mysql/usr/include/mysql -I/home/remi/ilcsoft/v01-17-03/ilcutil/v01-01/include -I/home/remi/dim/dim/dim -I/home/remi/git/LCAmore/source/include -I/home/remi/git/LCAmore/build/source/src -p /home/remi/git/LCAmore/source/include/lcamore/AboutDialog.hh /home/remi/git/LCAmore/source/include/lcamore/Logging.hh /home/remi/git/LCAmore/source/include/lcamore/VisualModule.hh /home/remi/git/LCAmore/source/include/lcamore/PublisherModule.hh /home/remi/git/LCAmore/source/include/lcamore/SubscriberModule.hh /home/remi/git/LCAmore/source/include/lcamore/MainFrame.hh /home/remi/git/LCAmore/source/include/lcamore/MonitorObject.hh /home/remi/git/LCAmore/source/include/lcamore/MonitorObjectTObject.hh /home/remi/git/LCAmore/source/include/lcamore/MonitorObjectString.hh /home/remi/git/LCAmore/source/include/lcamore/MonitorObjectScalar.hh /home/remi/git/LCAmore/source/include/lcamore/MonitorObjectProfile.hh /home/remi/git/LCAmore/source/include/lcamore/MonitorObjectHisto.hh /home/remi/git/LCAmore/source/include/lcamore/MonitorObjectGraph.hh /home/remi/git/LCAmore/source/include/LinkDef.hh
Limitation: Items in header must be separately specified /home/remi/git/LCAmore/source/include/lcamore/MonitoringException.hh:92:
Warning: Error occurred during reading source files
Warning: Error occurred during dictionary source generation
!!!Removing /home/remi/git/LCAmore/build/source/src/LCAmoreDict.cc /home/remi/git/LCAmore/build/source/src/LCAmoreDict.h !!!
Error: /home/remi/ilcsoft/v01-17-03/root/5.34.05/bin/rootcint: error loading headers...
make[2]: *** [source/src/LCAmoreDict.cc] Erreur 1
make[2]: quittant le répertoire « /home/remi/git/LCAmore/build »
make[1]: *** [source/CMakeFiles/LCAmore.dir/all] Erreur 2
make[1]: quittant le répertoire « /home/remi/git/LCAmore/build »
make: *** [all] Erreur 2
$
Cheers,
RE
rete
February 1, 2014, 1:30am
4
Hi,
I finally found the problem with CINT.
It seems that an implementation of a class can’t be only in a header file, thus the message “Limitation: Items must be separatly specified”.
I created a .cc file and move the implementation of my exception in this file.
Everything works perfectly.
Thank you for your help.
RE