rivet is hosted by Hepforge, IPPP Durham
close Warning: Can't synchronize with repository "(default)" (Repository path '/hepforge/hg/rivet/public/rivet' does not exist.). Look in the Trac log for more information.

Version 29 (modified by Andy Buckley, 14 years ago) (diff)


Getting started with Rivet/Rivetgun?

James: Tommy and I found the following to work, at least as far as building Rivet:

download "./configure" "make" and "make install" these external packages using automake 1.9 and autoconf 2.59

  • CLHEP from here
  • HepMC 2.0.x from here
  • HepPDT 2.02.02 from here
  • log4cpp 0.3.5rc3 from here. You will find that this release candidate does not build due to an extra semi-colon on line 29 of include/log4cpp/Manipulator.hh. Remove this semi-colon and it's ok. This has been reported as a bug to the developers and will be fixed in the next release.

In addition, we also installed out own copy of libtool in ~/Cedar/local to make sure we had the correct version (also had our own autotools and autoconf there, but probably unnecessary). exported the paths to autotools etc

  export AUTOCONF = $HOME/Cedar/local/bin/autoconf
  export AUTOMAKE = $HOME/Cedar/local/bin/automake
  export LIBTOOL = $HOME/Cedar/local/bin/libtool
  export ACLOCAL = $HOME/Cedar/local/bin/aclocal

and just for good measure made sure that $HOME/Cedar/local/bin was also at the front of $PATH

Having installed all that lot, we found that Rivet itself would build.

Running Rivet

To run Rivet, for now at least, you'll need RivetGun. You'll also need at least one generator package, and probably a PDF library, e.g.

  • Herwig 6.5.10
  • LHAPDF 5.x

Build RivetGun with the normal ./configure (--prefix=...), make, make install mantra. This should detect that you've got Rivet, Herwig and LHAPDF installed and build test applications based on that. You may have to copy the AIDA header files into your local include area, e.g. $HOME/heplocal/include/AIDA/... --- see below for some more details.

The most useful test binaries will be located in .../src/Test/, with names like testFHerwig6510 and testFHerwig6510WithRivet. All these executables are built from the testGenerator.cc source file, by using different build arguments --- see src/Test/Makefile.am. Feel free to add your own Analysis to the list --- see the Rivet Doxygen pages for the API guide.

Some Problems and Solutions

David: Here are some problems and soulutions I've encountered.

log4cpp 0.3.5rc3 from here

problem: when running make check, one of the tests fails resulting in an error. However if you run make without running the tests it compiles and installs ok.

solution: this is probably not a real problem since James used this version but don't be surprised if you get this error, to be on the safe side I installed the older version log4cpp 0.2.8

log4cpp 0.2.8

problem: here is a problem I encountered when running make with log4cpp. 0.2.8 on my home computer.

Clock.hh:13: error: ISO C++ does not support `long long'

soulution: not the best solution but I edited the header file (from which the error stemmed) from type long long to type long. No problems... yet, probably a much better idea would be to install the dependency.


problem: when running make there were errors due to missing AIDA header files.

In file included from /home/voong/cedar/local/include/Rivet/RivetHandler.hh:10,
                 from testGenerator.cc:17:
AIDA/IAnalysisFactory.h: No such file or directory

solution: Copy the AIDA folder (which is downloaded along with rivet) to the apropriate include folder (determined by where rivet and rivetgun are installed (./configure --prefix=/path/to)).


For my setup rivet was downloaded (using svn) to ~/install/rivet and configured using,

./configure --prefix = ~/cedar/local.

For a setup like this copy AIDA folder from

~/install/rivetgun/trunk/include/ to ~/cedar/local/include/

problem: running make check with rivetgun results in error,

make[3]: Entering directory `/home/voong/install/rivetgun/trunk/src/Test'
make[3]: ./testrivet: Command not found
make[3]: *** [check-local] Error 127

solution: again this is not a REAL problem, I've spoken with Andy on this subject and it is an expected and known error that will be fixed. Don't bother running make check, running make and then make install should be ok.