HistFitter setup or install

Dear All,

Sorry if this is a trivial question but I am having trouble to install HistFitter on my local mac, I also try on lxplus which seems to be straightforward but it doesn’t work. I followed these instruction in this twiki:
https://twiki.cern.ch/twiki/bin/viewauth/AtlasProtected/HistFitterTutorial#Setup_if_working_on_lxplus_or_wi but whenever I tried:

source setup_afs.sh or source setup.sh

I got:

-bash: setup_afs.sh: No such file or directory or 
-bash: setup.sh: No such file or directory

Could someone tell me please what’s going on ?

Thanks in advance,

Best Regards,

Diallo.

Hi,
Thanks very much :slight_smile:

Actually I found also this link: http://histfitter.web.cern.ch/histfitter/Software/Install/index.html and I tried in my local mac by following the commands after downloading the HisFitter folder:

tar -zxvf HistFitter-2.0.tar.gz (which generate the following directory: **HistFitter_branch46**)
cd HistFitter_branch46/
source /opt/HistFitter_branch46/setup.sh
cd src/
make

But I got so many errors after I run make (some of them):

./RooHist.h:62:26: error: unknown type name 'ostream'; did you mean 'std::ostream'?
  virtual void printName(ostream& os) const ;
                         ^~~~~~~
                         std::ostream
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/iosfwd:147:38: note: 'std::ostream' declared here
typedef basic_ostream<char>          ostream;
                                     ^
In file included from RooHist.cxx:24:
./RooHist.h:63:27: error: unknown type name 'ostream'; did you mean 'std::ostream'?
  virtual void printTitle(ostream& os) const ;
                          ^~~~~~~
                          std::ostream
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/iosfwd:147:38: note: 'std::ostream' declared here
typedef basic_ostream<char>          ostream;
                                     ^
In file included from RooHist.cxx:24:
./RooHist.h:64:31: error: unknown type name 'ostream'; did you mean 'std::ostream'?
  virtual void printClassName(ostream& os) const ;
                              ^~~~~~~
                              std::ostream
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/iosfwd:147:38: note: 'std::ostream' declared here
typedef basic_ostream<char>          ostream;
                                     ^
In file included from RooHist.cxx:24:
./RooHist.h:65:31: error: unknown type name 'ostream'; did you mean 'std::ostream'?
  virtual void printMultiline(ostream& os, Int_t content, Bool_t verbose=kFALSE, TString indent= "") const;
                              ^~~~~~~
                              std::ostream
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/iosfwd:147:38: note: 'std::ostream' declared here
typedef basic_ostream<char>          ostream;
                                     ^
RooHist.cxx:150:94: error: use of undeclared identifier 'endl'; did you mean 'std::endl'?
    coutE(InputArguments) << "RooHist::RooHist: histograms have different number of bins" << endl;
                                                                                             ^~~~
                                                                                             std::endl
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1/ostream:999:1: note: 'std::endl' declared here
endl(basic_ostream<_CharT, _Traits>& __os)

So don’t know why I get these errors ?

Best Regards,

Diallo.

Looking into the source code of HistFitter-2.0 … you need:

source /full/path/to/the/root/bin/thisroot.sh # setup ROOT
cd /full/path/to/the/HistFitter_branch46
source ./setup.sh # setup HistFitter

And it seems to me that it is an old source code which needs ROOT 5.

But I don’t have setup.sh file in my /full/path/to/the/root/bin/, I uploaded the screenshot of the directory where I installed my root, I go through all the directories step by step.

ok I did this when I am in /opt/HistFitter_branch46 directory:

source /opt/root/root-6.14.06_install/bin/thisroot.sh
source ./setup.sh
cd src/
make

And I got the same errors but as you said maybe it’s because I am not using the right root version.
How to move to an old root version in local computer ? I used use this commands in lxplus:

source /afs/cern.ch/sw/lcg/contrib/gcc/4.7/x86_64-slc6/setup.sh
source /afs/cern.ch/sw/lcg/app/releases/ROOT/5.34.19/x86_64-slc6-gcc46-opt/root/bin/thisroot.sh

But don’t know in local mac.

Best Regards,

Diallo.

Hello Diallo,

If possible, look more into the direction of getting a newer histfitter. In this thread, I saw several items that are not future proof:

  • root 5 is not supported, any more.
  • afs (where you got gcc & root from) will not be supported in the near future
  • gcc 4.7 is also ancient.

I would advise to ask the HistFitter developers (you can find them on their webpage) for how to obtain a version that works.

Hu Stephan,

Ok I tried to get a newer version of histfitter.
Thanks for you advice.

Best Regards,

Diallo.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.