Skip to content
Craig Riecke edited this page Jun 21, 2016 · 2 revisions

The easiest way to build Frenetic from source is to use the Frenetic Developer VM. This VM has the correct version of Ubuntu, OCaml, and OPAM dependencies installed. The source is located in the /home/frenetic/src/frenetic and you can compile the latest Master branch with:

vagrant@frenetic:~/src/frenetic$ make distclean
vagrant@frenetic:~/src/frenetic$ make

You can run frenetic.native out of the source directory, or use make install to install the executables on your path.

Building From Source From Scratch

If you don't want to use a VM, or you want to use your own custom setup, you can use the Frenetic Developer VM scripts for guidance. Some dependencies:

  • Ubuntu Server 14.04 - you can also use different flavors of Ubuntu 14.04 like Desktop or LUbuntu.
  • Mininet 2.1 - this must be built and installed from source on Ubuntu 14.04, since it doesn't have a dpkg. 2.1 or above is necessary because of port numbering issues.
  • Wireshark 1.12 - also needs a source build on Ubuntu 14.04. This version has OpenFlow 1.0 and 1.3 support.
  • OCaml 4.02.3
  • Git

You can install these dependencies by cloning the http://github.com/frenetic-lang/frenetic-vm repository, and running:

$ cd frenetic-vm
$ sudo root-bootstrap.sh

Frenetic itself can be build by the following:

$ opam init --auto-setup
$ mkdir src
$ cd src
$ git clone https://github.com/frenetic-lang/frenetic
$ cd ..
$ opam pin add frenetic src/frenetic -n -k git
$ opam install -y frenetic
$ sudo pip install -e  src/frenetic/lang/python

Or you can just run user-bootstrap.sh from the Frenetic VM repo.