Skip to content
Snippets Groups Projects
get-frama-c.html 4.89 KiB
Newer Older
Augustin Lemesle's avatar
Augustin Lemesle committed
---
layout: default
css: get-framac
title: Get Frama-C
Allan Blanchard's avatar
Allan Blanchard committed
description: Download and install the Frama-C analysis platform now!
Yaelle Vincont's avatar
Yaelle Vincont committed
---

<body class="page nonTouch">

Yaelle Vincont's avatar
Yaelle Vincont committed
  <div id="wrapper" class="hfeed">

	{% include headers.html header="download" %}
Yaelle Vincont's avatar
Yaelle Vincont committed

    <div id="container" class="mainContainer">
      <div class="getFramaC">
        <div class="wrap">
          <h1 class="pageTitle">Choose for which OS you want Frama-C</h1>
Yaelle Vincont's avatar
Yaelle Vincont committed

          <div class="OS codeTabs">
Augustin Lemesle's avatar
Augustin Lemesle committed
            <a href="#" role="button" class="tab-up tab-up-linux" onClick="clickTab('linux')"><b>Linux</b></a> <a href="#" role="button" class="tab-up tab-up-mac" onClick="clickTab('mac')"><b>Mac</b></a> <a href="#" role="button" class="tab-up tab-up-windows" onClick="clickTab('windows')"><b>Windows (WSL)</b></a>
Yaelle Vincont's avatar
Yaelle Vincont committed
          </div>
		  <br>
        <div class="notebook code">
          <div>
            <div class="codeScreen">
              <div class="codeTab tab-linux hide">
                <pre class="shell-linux">
<span class="shell-linux-comment"># 1. Install <a href="https://opam.ocaml.org/">opam</a> (OCaml package manager)</span>
sudo apt install opam <span class="shell-linux-comment"># or dnf, pacman, etc.</span>
<span class="shell-linux-comment"># 2. Install Frama-C's dependencies</span>
opam install depext
opam depext frama-c
<br>
<span class="shell-linux-comment"># 3. Install Frama-C itself</span>
opam install frama-c</pre>
Yaelle Vincont's avatar
Yaelle Vincont committed
                </div>

                <div class="codeTab tab-mac hide">
                  <pre class="shell-mac">
<span class="shell-mac-comment"># 1. Install <a href="https://brew.sh/">Homebrew</a></span>
<span class="shell-mac-comment"># 2. Install required dependencies for Frama-C</span>
brew install opam gmp gtk+ gtksourceview libgnomecanvas
<span class="shell-mac-comment"># 3. Configure GTK library</span>
export PKG_CONFIG_PATH=/usr/local/opt/libffi/lib/pkgconfig:/usr/local/opt/libxml2/lib/pkgconfig:/usr/local/lib/pkgconfig
<span class="shell-mac-comment"># 4. Install recommended dependencies for Frama-C</span>
brew install graphviz zmq
<span class="shell-mac-comment"># 5. Finally install Frama-C</span>
opam install frama-c</pre>
Yaelle Vincont's avatar
Yaelle Vincont committed
                </div>

                <div class="codeTab tab-windows hide">
					<pre class="shell-win">
<span class="shell-win-comment"># 1. Prepare opam installation</span>
sudo apt update
sudo apt upgrade
sudo apt install make m4 gcc opam
<span class="shell-win-comment"># 2. opam setup</span>
opam init --disable-sandboxing -c 4.07.1 --shell-setup
eval $(opam env)
opam install -y depext
<span class="shell-win-comment"># 3. Install graphical dependencies</span>
opam depext --install -y lablgtk3 lablgtk3-sourceview3

<span class="shell-win-comment"># 4. Install Frama-C</span>
opam depext --install -y frama-c</pre>
Yaelle Vincont's avatar
Yaelle Vincont committed
                </div>
              </div>
            </div>
          </div>
          <div class="otherConfiguration">
Allan Blanchard's avatar
Allan Blanchard committed
            For detailed installation instructions, <a target="_blank" href="https://git.frama-c.com/pub/frama-c/blob/master/INSTALL.md">click here</a>
Allan Blanchard's avatar
Allan Blanchard committed
            <br>All Frama-C releases are available <a href="/html/framac-versions.html">from this page</a>
          {% if site.fc-versions.last.beta %}
          <div class="otherVersion">
            The beta version of the next Frama-C release is available <a href="{{ site.fc-versions.last.url }}">here</a>
Allan Blanchard's avatar
Allan Blanchard committed
          <h1 class="pageTitle">Downloads</h1>
          <div class="tileWrapper" size="big">
            <div class="tile">
              <h4 class="tileTitle"><span>Frama-C and ACSL</span></h4>
              <ul>
Allan Blanchard's avatar
Allan Blanchard committed
                <li><a href="/download/frama-c-source-dist.tar.gz">Frama-C source distribution</a></li>
                <li><a href="/download/frama-c-user-manual.pdf">Frama-C user manual</a></li>
                <li><a href="/download/frama-c-plugin-development-guide.pdf">Plug-in development guide</a></li>
                <li><a href="/download/frama-c-acsl-implementation.pdf">ACSL implementation</a></li>
Allan Blanchard's avatar
Allan Blanchard committed
                <li><a href="/download/e-acsl/e-acsl-implementation.pdf">E-ACSL implementation</a></li>
            <div class="tile">
              <h4 class="tileTitle"><span>Plug-ins</span></h4>
              {% assign plugins = site.fc-plugins | where:"distrib_mode","main" %}
              <ul>
              {% for plugin in plugins %}
                {% if plugin.manual_pdf %}
                <li>
                  <a href="{{ plugin.manual_pdf }}">
                    {% if plugin.short %}{{ plugin.short }}{% else %}{{ plugin.title }}{% endif %} manual
                  </a>
                </li>
                {% endif %}
              {% endfor %}
              </ul>
Yaelle Vincont's avatar
Yaelle Vincont committed
        </div>
      </div>
Yaelle Vincont's avatar
Yaelle Vincont committed

	  {% include footer.html %}

      <div class="clear"></div>
    </div>
  </div>
Augustin Lemesle's avatar
Augustin Lemesle committed
  <head><script type='text/javascript' src='/assets/js/codeTabs.js'></script></head>