Hi there,
I have been using ROOT 6 to run some codes for my project on Ubuntu 14.04. The codes ran just fine until I installed FFTW and reconfigured ROOT with “–enable-roofit”. I have received a lot of redefinition errors when running the codes. This is the message:
Info in <TUnixSystem::ACLiC>: creating shared library /home/nhnguyen/root6/macros/./aragorn_C.so
Info in <ACLiC>: script has already been loaded in interpreted mode
Info in <ACLiC>: unloading /home/nhnguyen/root6/macros/./quink.C and compiling it
Info in <TUnixSystem::ACLiC>: creating shared library /home/nhnguyen/root6/macros/./quink_C.so
In file included from input_line_73:16:
In file included from /home/nhnguyen/root6/macros/quink.C:5:
In file included from /home/nhnguyen/root6/macros/ConvoluteLoop.C:10:
/home/nhnguyen/root6/macros/RLAfuncs.cxx:24:18: error: redefinition of 'Rfunc'
double RLAfuncs::Rfunc(double *t, double *par)
^
/home/nhnguyen/root6/macros/RLAfuncs.cxx:24:18: note: previous definition is
here
double RLAfuncs::Rfunc(double *t, double *par)
^
In file included from input_line_73:16:
In file included from /home/nhnguyen/root6/macros/quink.C:5:
In file included from /home/nhnguyen/root6/macros/ConvoluteLoop.C:10:
/home/nhnguyen/root6/macros/RLAfuncs.cxx:47:18: error: redefinition of 'Lfunc'
double RLAfuncs::Lfunc(double *t, double *par)
^
/home/nhnguyen/root6/macros/RLAfuncs.cxx:47:18: note: previous definition is
here
double RLAfuncs::Lfunc(double *t, double *par)
^
In file included from input_line_73:16:
In file included from /home/nhnguyen/root6/macros/quink.C:5:
In file included from /home/nhnguyen/root6/macros/ConvoluteLoop.C:10:
/home/nhnguyen/root6/macros/RLAfuncs.cxx:56:18: error: redefinition of 'Afunc'
double RLAfuncs::Afunc(double *t, double *par)
^
/home/nhnguyen/root6/macros/RLAfuncs.cxx:56:18: note: previous definition is
here
double RLAfuncs::Afunc(double *t, double *par)
^
In file included from input_line_73:16:
In file included from /home/nhnguyen/root6/macros/quink.C:5:
In file included from /home/nhnguyen/root6/macros/ConvoluteLoop.C:10:
/home/nhnguyen/root6/macros/RLAfuncs.cxx:74:18: error: redefinition of 'RLAconv'
double RLAfuncs::RLAconv(double tt, double t_R, double sigmaL, double t_...
^
/home/nhnguyen/root6/macros/RLAfuncs.cxx:74:18: note: previous definition is
here
double RLAfuncs::RLAconv(double tt, double t_R, double sigmaL, double t_...
^
In file included from input_line_73:16:
In file included from /home/nhnguyen/root6/macros/quink.C:5:
In file included from /home/nhnguyen/root6/macros/ConvoluteLoop.C:11:
/home/nhnguyen/root6/macros/Qfuncs.cxx:26:16: error: redefinition of 'PadRect'
double Qfuncs::PadRect(double tt, double xl, double xh, double yl, doubl...
^
/home/nhnguyen/root6/macros/Qfuncs.cxx:26:16: note: previous definition is here
double Qfuncs::PadRect(double tt, double xl, double xh, double yl, doubl...
^
In file included from input_line_73:16:
In file included from /home/nhnguyen/root6/macros/quink.C:5:
In file included from /home/nhnguyen/root6/macros/ConvoluteLoop.C:11:
/home/nhnguyen/root6/macros/Qfuncs.cxx:65:16: error: redefinition of 'TestTri'
double Qfuncs::TestTri(double tt)
^
/home/nhnguyen/root6/macros/Qfuncs.cxx:65:16: note: previous definition is here
double Qfuncs::TestTri(double tt)
^
In file included from input_line_73:16:
In file included from /home/nhnguyen/root6/macros/quink.C:5:
In file included from /home/nhnguyen/root6/macros/ConvoluteLoop.C:11:
/home/nhnguyen/root6/macros/Qfuncs.cxx:83:16: error: redefinition of 'TestBox'
double Qfuncs::TestBox(double tt)
^
/home/nhnguyen/root6/macros/Qfuncs.cxx:83:16: note: previous definition is here
double Qfuncs::TestBox(double tt)
^
In file included from input_line_73:16:
In file included from /home/nhnguyen/root6/macros/quink.C:5:
/home/nhnguyen/root6/macros/ConvoluteLoop.C:14:9: error: redefinition of 'now'
TDatime now;
^
/home/nhnguyen/root6/macros/ConvoluteLoop.C:14:9: note: previous definition is
here
TDatime now;
^
In file included from input_line_73:16:
In file included from /home/nhnguyen/root6/macros/quink.C:5:
/home/nhnguyen/root6/macros/ConvoluteLoop.C:16:8: error: redefinition of
'outfile'
TFile* outfile = new TFile("PRF_all.root", "RECREATE");
^
/home/nhnguyen/root6/macros/ConvoluteLoop.C:16:8: note: previous definition is
here
TFile* outfile = new TFile("PRF_all.root", "RECREATE");
^
In file included from input_line_73:16:
In file included from /home/nhnguyen/root6/macros/quink.C:5:
/home/nhnguyen/root6/macros/ConvoluteLoop.C:17:6: error: redefinition of 'fRLA'
TF1 *fRLA, *fQ, *f_12;
^
/home/nhnguyen/root6/macros/ConvoluteLoop.C:17:6: note: previous definition is
here
TF1 *fRLA, *fQ, *f_12;
^
In file included from input_line_73:16:
In file included from /home/nhnguyen/root6/macros/quink.C:5:
/home/nhnguyen/root6/macros/ConvoluteLoop.C:17:13: error: redefinition of 'fQ'
TF1 *fRLA, *fQ, *f_12;
^
/home/nhnguyen/root6/macros/ConvoluteLoop.C:17:13: note: previous definition is
here
TF1 *fRLA, *fQ, *f_12;
^
In file included from input_line_73:16:
In file included from /home/nhnguyen/root6/macros/quink.C:5:
/home/nhnguyen/root6/macros/ConvoluteLoop.C:17:18: error: redefinition of 'f_12'
TF1 *fRLA, *fQ, *f_12;
^
/home/nhnguyen/root6/macros/ConvoluteLoop.C:17:18: note: previous definition is
here
TF1 *fRLA, *fQ, *f_12;
^
In file included from input_line_73:16:
In file included from /home/nhnguyen/root6/macros/quink.C:5:
/home/nhnguyen/root6/macros/ConvoluteLoop.C:26:8: error: redefinition of
'Func_1'
double Func_1(double *t, double *par) // The detector-response function
^
/home/nhnguyen/root6/macros/ConvoluteLoop.C:26:8: note: previous definition is
here
double Func_1(double *t, double *par) // The detector-response function
^
In file included from input_line_73:16:
In file included from /home/nhnguyen/root6/macros/quink.C:5:
/home/nhnguyen/root6/macros/ConvoluteLoop.C:34:8: error: redefinition of
'Func_2'
double Func_2(double *t, double *par) // The charge dispersion function
^
/home/nhnguyen/root6/macros/ConvoluteLoop.C:34:8: note: previous definition is
here
double Func_2(double *t, double *par) // The charge dispersion function
^
In file included from input_line_73:16:
In file included from /home/nhnguyen/root6/macros/quink.C:5:
/home/nhnguyen/root6/macros/ConvoluteLoop.C:42:8: error: redefinition of
'Func_12'
double Func_12( double *t, double *par ) // The multiplication of both functions
^
/home/nhnguyen/root6/macros/ConvoluteLoop.C:42:8: note: previous definition is
here
double Func_12( double *t, double *par ) // The multiplication of both functions
^
In file included from input_line_73:16:
In file included from /home/nhnguyen/root6/macros/quink.C:5:
/home/nhnguyen/root6/macros/ConvoluteLoop.C:57:6: error: redefinition of
'ConvoluteLoop'
void ConvoluteLoop(double * maspar, double * relativepos, bool endOfLoop)
^
/home/nhnguyen/root6/macros/ConvoluteLoop.C:57:6: note: previous definition is
here
void ConvoluteLoop(double * maspar, double * relativepos, bool endOfLoop)
^
In file included from input_line_73:16:
/home/nhnguyen/root6/macros/quink.C:9:8: error: redefinition of 'quink'
quink::quink(double Xl, double Xh, double Yl, double Yh)
^
/home/nhnguyen/root6/macros/quink.C:9:8: note: previous definition is here
quink::quink(double Xl, double Xh, double Yl, double Yh)
^
In file included from input_line_73:16:
/home/nhnguyen/root6/macros/quink.C:17:13: error: redefinition of 'Display'
void quink::Display(double t[5], double &x0, double &y0, int &lxmax, in...
^
/home/nhnguyen/root6/macros/quink.C:17:13: note: previous definition is here
void quink::Display(double t[5], double &x0, double &y0, int &lxmax, in...
^
In file included from input_line_73:16:
/home/nhnguyen/root6/macros/quink.C:47:13: error: redefinition of 'Report'
void quink::Report()
^
/home/nhnguyen/root6/macros/quink.C:47:13: note: previous definition is here
void quink::Report()
^
Warning in <TInterpreter::TCling::RegisterModule>: Problems declaring payload for module quink_C_ACLiC_dict.
Info in <TUnixSystem::ACLiC>: creating shared library /home/nhnguyen/root6/macros/./Qfuncs_cxx.so
In file included from input_line_77:16:
/home/nhnguyen/root6/macros/Qfuncs.cxx:26:16: error: redefinition of 'PadRect'
double Qfuncs::PadRect(double tt, double xl, double xh, double yl, doubl...
^
/home/nhnguyen/root6/macros/Qfuncs.cxx:26:16: note: previous definition is here
double Qfuncs::PadRect(double tt, double xl, double xh, double yl, doubl...
^
In file included from input_line_77:16:
/home/nhnguyen/root6/macros/Qfuncs.cxx:65:16: error: redefinition of 'TestTri'
double Qfuncs::TestTri(double tt)
^
/home/nhnguyen/root6/macros/Qfuncs.cxx:65:16: note: previous definition is here
double Qfuncs::TestTri(double tt)
^
In file included from input_line_77:16:
/home/nhnguyen/root6/macros/Qfuncs.cxx:83:16: error: redefinition of 'TestBox'
double Qfuncs::TestBox(double tt)
^
/home/nhnguyen/root6/macros/Qfuncs.cxx:83:16: note: previous definition is here
double Qfuncs::TestBox(double tt)
^
Warning in <TInterpreter::TCling::RegisterModule>: Problems declaring payload for module Qfuncs_cxx_ACLiC_dict.
Info in <TUnixSystem::ACLiC>: creating shared library /home/nhnguyen/root6/macros/./RLAfuncs_cxx.so
In file included from input_line_81:16:
/home/nhnguyen/root6/macros/RLAfuncs.cxx:24:18: error: redefinition of 'Rfunc'
double RLAfuncs::Rfunc(double *t, double *par)
^
/home/nhnguyen/root6/macros/RLAfuncs.cxx:24:18: note: previous definition is
here
double RLAfuncs::Rfunc(double *t, double *par)
^
In file included from input_line_81:16:
/home/nhnguyen/root6/macros/RLAfuncs.cxx:47:18: error: redefinition of 'Lfunc'
double RLAfuncs::Lfunc(double *t, double *par)
^
/home/nhnguyen/root6/macros/RLAfuncs.cxx:47:18: note: previous definition is
here
double RLAfuncs::Lfunc(double *t, double *par)
^
In file included from input_line_81:16:
/home/nhnguyen/root6/macros/RLAfuncs.cxx:56:18: error: redefinition of 'Afunc'
double RLAfuncs::Afunc(double *t, double *par)
^
/home/nhnguyen/root6/macros/RLAfuncs.cxx:56:18: note: previous definition is
here
double RLAfuncs::Afunc(double *t, double *par)
^
In file included from input_line_81:16:
/home/nhnguyen/root6/macros/RLAfuncs.cxx:74:18: error: redefinition of 'RLAconv'
double RLAfuncs::RLAconv(double tt, double t_R, double sigmaL, double t_...
^
/home/nhnguyen/root6/macros/RLAfuncs.cxx:74:18: note: previous definition is
here
double RLAfuncs::RLAconv(double tt, double t_R, double sigmaL, double t_...
^
Warning in <TInterpreter::TCling::RegisterModule>: Problems declaring payload for module RLAfuncs_cxx_ACLiC_dict.
Info in <TUnixSystem::ACLiC>: creating shared library /home/nhnguyen/root6/macros/./ConvoluteLoop_C.so
In file included from input_line_85:16:
In file included from /home/nhnguyen/root6/macros/ConvoluteLoop.C:10:
/home/nhnguyen/root6/macros/RLAfuncs.cxx:24:18: error: redefinition of 'Rfunc'
double RLAfuncs::Rfunc(double *t, double *par)
^
/home/nhnguyen/root6/macros/RLAfuncs.cxx:24:18: note: previous definition is
here
double RLAfuncs::Rfunc(double *t, double *par)
^
In file included from input_line_85:16:
In file included from /home/nhnguyen/root6/macros/ConvoluteLoop.C:10:
/home/nhnguyen/root6/macros/RLAfuncs.cxx:47:18: error: redefinition of 'Lfunc'
double RLAfuncs::Lfunc(double *t, double *par)
^
/home/nhnguyen/root6/macros/RLAfuncs.cxx:47:18: note: previous definition is
here
double RLAfuncs::Lfunc(double *t, double *par)
^
In file included from input_line_85:16:
In file included from /home/nhnguyen/root6/macros/ConvoluteLoop.C:10:
/home/nhnguyen/root6/macros/RLAfuncs.cxx:56:18: error: redefinition of 'Afunc'
double RLAfuncs::Afunc(double *t, double *par)
^
/home/nhnguyen/root6/macros/RLAfuncs.cxx:56:18: note: previous definition is
here
double RLAfuncs::Afunc(double *t, double *par)
^
In file included from input_line_85:16:
In file included from /home/nhnguyen/root6/macros/ConvoluteLoop.C:10:
/home/nhnguyen/root6/macros/RLAfuncs.cxx:74:18: error: redefinition of 'RLAconv'
double RLAfuncs::RLAconv(double tt, double t_R, double sigmaL, double t_...
^
/home/nhnguyen/root6/macros/RLAfuncs.cxx:74:18: note: previous definition is
here
double RLAfuncs::RLAconv(double tt, double t_R, double sigmaL, double t_...
^
In file included from input_line_85:16:
In file included from /home/nhnguyen/root6/macros/ConvoluteLoop.C:11:
/home/nhnguyen/root6/macros/Qfuncs.cxx:26:16: error: redefinition of 'PadRect'
double Qfuncs::PadRect(double tt, double xl, double xh, double yl, doubl...
^
/home/nhnguyen/root6/macros/Qfuncs.cxx:26:16: note: previous definition is here
double Qfuncs::PadRect(double tt, double xl, double xh, double yl, doubl...
^
In file included from input_line_85:16:
In file included from /home/nhnguyen/root6/macros/ConvoluteLoop.C:11:
/home/nhnguyen/root6/macros/Qfuncs.cxx:65:16: error: redefinition of 'TestTri'
double Qfuncs::TestTri(double tt)
^
/home/nhnguyen/root6/macros/Qfuncs.cxx:65:16: note: previous definition is here
double Qfuncs::TestTri(double tt)
^
In file included from input_line_85:16:
In file included from /home/nhnguyen/root6/macros/ConvoluteLoop.C:11:
/home/nhnguyen/root6/macros/Qfuncs.cxx:83:16: error: redefinition of 'TestBox'
double Qfuncs::TestBox(double tt)
^
/home/nhnguyen/root6/macros/Qfuncs.cxx:83:16: note: previous definition is here
double Qfuncs::TestBox(double tt)
^
In file included from input_line_85:16:
/home/nhnguyen/root6/macros/ConvoluteLoop.C:14:9: error: redefinition of 'now'
TDatime now;
^
/home/nhnguyen/root6/macros/ConvoluteLoop.C:14:9: note: previous definition is
here
TDatime now;
^
In file included from input_line_85:16:
/home/nhnguyen/root6/macros/ConvoluteLoop.C:16:8: error: redefinition of
'outfile'
TFile* outfile = new TFile("PRF_all.root", "RECREATE");
^
/home/nhnguyen/root6/macros/ConvoluteLoop.C:16:8: note: previous definition is
here
TFile* outfile = new TFile("PRF_all.root", "RECREATE");
^
In file included from input_line_85:16:
/home/nhnguyen/root6/macros/ConvoluteLoop.C:17:6: error: redefinition of 'fRLA'
TF1 *fRLA, *fQ, *f_12;
^
/home/nhnguyen/root6/macros/ConvoluteLoop.C:17:6: note: previous definition is
here
TF1 *fRLA, *fQ, *f_12;
^
In file included from input_line_85:16:
/home/nhnguyen/root6/macros/ConvoluteLoop.C:17:13: error: redefinition of 'fQ'
TF1 *fRLA, *fQ, *f_12;
^
/home/nhnguyen/root6/macros/ConvoluteLoop.C:17:13: note: previous definition is
here
TF1 *fRLA, *fQ, *f_12;
^
In file included from input_line_85:16:
/home/nhnguyen/root6/macros/ConvoluteLoop.C:17:18: error: redefinition of 'f_12'
TF1 *fRLA, *fQ, *f_12;
^
/home/nhnguyen/root6/macros/ConvoluteLoop.C:17:18: note: previous definition is
here
TF1 *fRLA, *fQ, *f_12;
^
In file included from input_line_85:16:
/home/nhnguyen/root6/macros/ConvoluteLoop.C:26:8: error: redefinition of
'Func_1'
double Func_1(double *t, double *par) // The detector-response function
^
/home/nhnguyen/root6/macros/ConvoluteLoop.C:26:8: note: previous definition is
here
double Func_1(double *t, double *par) // The detector-response function
^
In file included from input_line_85:16:
/home/nhnguyen/root6/macros/ConvoluteLoop.C:34:8: error: redefinition of
'Func_2'
double Func_2(double *t, double *par) // The charge dispersion function
^
/home/nhnguyen/root6/macros/ConvoluteLoop.C:34:8: note: previous definition is
here
double Func_2(double *t, double *par) // The charge dispersion function
^
In file included from input_line_85:16:
/home/nhnguyen/root6/macros/ConvoluteLoop.C:42:8: error: redefinition of
'Func_12'
double Func_12( double *t, double *par ) // The multiplication of both functions
^
/home/nhnguyen/root6/macros/ConvoluteLoop.C:42:8: note: previous definition is
here
double Func_12( double *t, double *par ) // The multiplication of both functions
^
In file included from input_line_85:16:
/home/nhnguyen/root6/macros/ConvoluteLoop.C:57:6: error: redefinition of
'ConvoluteLoop'
void ConvoluteLoop(double * maspar, double * relativepos, bool endOfLoop)
^
/home/nhnguyen/root6/macros/ConvoluteLoop.C:57:6: note: previous definition is
here
void ConvoluteLoop(double * maspar, double * relativepos, bool endOfLoop)
^
Warning in <TInterpreter::TCling::RegisterModule>: Problems declaring payload for module ConvoluteLoop_C_ACLiC_dict.
I have done “make clean, make distclean” the FFTW and rebuilt both ROOT 5 and 6 from source without enabling RooFit. In ROOT 6, same thing happens. In ROOT 5, the codes seem to be running but taking a huge amount of time (at an integration step) . In fact, they are still running and I have not received the expected result.
Before FFWT and RooFit, it took only a few seconds, at most a few minutes, for the codes to run. Everything has been behaving very strangely after that. Do you have any ideas? Thank you!!