My friend Aaron has an internship with CERN or something like it, and he’s using a tool called VBFNLO for… something with particles.
Anyway, he was concerned about being able to install VBFNLO, so he called and asked me for help. After a bit of searching, we found by using
cat /etc/issue that he was running Scientific Linux. I’ll be demonstrating on an Instant Server running Ubuntu 13.04. Both should work.
Downloads and installation instructions for VBFNLO are available on the VBFNLO website.
First, we need to make sure that we have the proper compilers. Make sure that you have a C compiler such as GCC, and a FORTRAN77 compiler such as g77 or gfortran. You can do this by running
which g77, and
which gfortran. As long as the gcc and one of (g77|gfortran) return a value (e.g. /usr/bin/gcc), you’re fine. If running those commands returns no text, you’ll need to install the proper compilers, or ensure that you have another compiler that will work with VBFNLO (Ubuntu:
sudo apt get install gcc,
sudo apt-get install gfortran)
EDIT: You will also need
make – I think this was a major hang-up in my installation process. You can test for
make by running
which g++ and
which make – if the commands don’t print anything, you’ll have to install them (Ubuntu:
sudo apt-get install g++,
sudo apt-get install make)
The next thing to do is to move to a directory where you want to install VBFNLO. I’ll be working in my home directory, indicated by a tilde (~), but on my machine is
The VBFNLO source is available for download at http://www.itp.kit.edu/~vbfnloweb/wiki/lib/exe/fetch.php?media=download:vbfnlo-2.6.3.tgz, so we’ll run
wget http://www.itp.kit.edu/~vbfnloweb/wiki/lib/exe/fetch.php?media=download:vbfnlo-2.6.3.tgz to download the file to our current directory.
If you run
ls, you should see a file called
fetch.php?media=download:vbfnlo-2.6.3.tgz. Let’s rename this to something more useful. Run
mv fetch.php?media=download:vbfnlo-2.6.3.tgz vbfnlo-2.6.3.tgz to have a more workable name. Remember that you can hit tab to autocomplete the
The .tgz extension means that this is a tarballed, gzipped file. So let’s untar and unzip! Run
tar -xzvf vbfnlo-2.6.2.tgz to extract all that delicious science from it’s compressed form.
If you run
ls now, you should see a directory called
VBFNLO-2.6.3. You’ll want to
cd VBFNLO-2.6.3 to get into it. (If it says something about not being a directory, you’ve probably messed up or had insufficient privileges in this directory. Try running the tar command with higher privileges, i.e.
sudo, or in a folder where you have directory creation permissions).
The next thing you’ll want to do is run
sh ./configure --prefix=[path], where you replace [path] with the path to where you’ll be installing VBFNLO. In my case, I will run
sh ./configure --prefix=/home/ubuntu. (You can see a full list of configuration flags on the VBFNLO installation instructions page, but odds are you want a default install for now.)
Now that configure has run, run
make inside the VBFNLO-2.6.3 directory. This may take some time to complete. Go get some coffee or something. On my Micro-ec2 instance it took well over an hour; hopefully you’re running this on something a bit more powerful. You will need to have write permissions in the working directory. If you’re on a sketchy connection, you may want to run
make &, which will decouple the
make command from your terminal and keep running even if you disconnect. You can check if it’s still running by executing
top, and looking for the process
The next command you’ll need to run is
sudo make install, which will actually create the executables for you to run. You’ll need to be a sudoer or root to run
If there are no errors, you should have your executables sitting in the path you provided earlier, in the bin folder.