# Professor installation¶

Note

If you have access to the CERN AFS file system you can try to use a version of Professor installed under /afs/cern.ch/sw/lcg/external/MCGenerators/professor.

## Required packages¶

The base system for parametrisation requires:

gcc >=4.6
Compiler, C++11 compatible
Eigen 3
Linear algebra — headers only, version 3.26 and later recommended

In order to use the Professor tools you will need the following external packages:

cython
For the Python extensions
iMinuit
iMinuit is used to interface with the well known MINUIT package.
Matplotlib

Some plotting tools require matplotlib to produce output.

prof2-I requires the wxWindows backend for matplotlib.

## Installing Professor¶

The latest release of professor can always be found here.

Extract the tarball and compile as such:

CXXFLAGS="-I/LOCATION_OF_EIGEN_HEADERS -O4" make all


To make the Professor scripts and modules available you have several options:

1. Quick and dirty: Add the bin directory to your $PATH and professor to your $PYTHONPATH by doing:

export PATH="/path/to/bin:$PATH" export LD_LIBRARY_PATH="/path/to/lib:$LD_LIBRARY_PATH"
export PYTHONPATH="/path/to/pyext/professor/:$PYTHONPATH"  in your shell (for C-shells the above commands must be modified). This should allow you to run the Professor scripts from the command line, e.g.: prof2-tune -h  To make this persistent between shell sessions you can add the above lines to your shell’s runtime configuration, e.g. $HOME/.bashrc.

2. More systematic: Alternatively, you can use the setup.py script that is distributed with Professor and offers the usual options, try:

./setup.py --help


in the trunk directory.

--prefix allows you to give a directory under which Professor is installed similar to the usual .configure && make && make install triple jump, e.g.:

./setup.py --prefix $HOME/local install  will install the scripts in $HOME/local/bin and the modules in \$HOME/local/lib/pythonXY/site-packages/ where XY is the Python version available at this instance.