/hepware

A collection of software installation instructions

Primary LanguageMakefile

HEPWARE

Software commonly used in High-Energy Physics is specialized, and finding up-to-date versions of it in the packages of any given OS is almost impossible. Most of it needs to be compiled by hand. Because compiling by hand also involves compiling the dependencies too, the process is tedious and error-prone.

This is where hepware comes in: we package instructions to install various libraries and tools. E.g. to install FORM along with all of its dependencies, get hepware and simply type:

make form.done -jN

... where N is the number of threads the build process is allowed to use in parallel (set this to the number of cores the build machine has).

To install all the packages hepware has, run:

make all.done -jN

Where is the software placed?

Into the subdirectories. Binaries go into bin/, include files into include/, libraries into lib/. Software that can not be properly installed into these directories is placed into subdirectories of shared/.

To use the installed programs you'll probably want to add the bin/ subdirectory to your PATH, for example using

export PATH=/path/to/hepware/bin:$PATH

Similarly, to use the libraries you'll need to add -I/path/to/hepware/include flag to your C compiler options and -L/path/to/hepware/lib flag to your linker options. How to do this depends on the software you are trying to compile.

What is required?

  • A Linux system with recent C (GCC or Clang), C++ (GCC or Clang), and Fortran (GFortran) compilers, the newer the better.

  • The standard set of standard GNU development tools (i.e. make, sed, etc).

  • CMake.

  • Autotools.

MacOS, FreeBSD, and other operating systems might or might not work.

Available software