-
Allan Blanchard authoredAllan Blanchard authored
beryllium.html 6.88 KiB
---
layout: doc_page
title: Installation instructions for Frama-C Beryllium release
---
<pre>
-------------------------
INSTALLATION INSTRUCTIONS
-------------------------
===============================================================================
SUMMARY
===============================================================================
0) Summary
1) Quick Start
2) Requirements
3) Configuration
4) Compilation
5) Installation
6) Custom Installation
7) Testing the Installation
8) Installation of additional plug-ins
9) API Documentation
10) Uninstallation
11) Have Fun with Frama-C!
===============================================================================
QUICK START
===============================================================================
1) Install OCaml if not already installed.
2a) On Linux-like distribution:
./configure && make && sudo make install
2b) On Windows+Cygwin:
./configure --prefix C:/windows/path/with/direct/slash && make && make install
3) The binary frama-c (and frama-c-gui if you have lablgtk2) is now installed.
4) Optionally, test your installation by running:
frama-c -val tests/misc/CruiseControl*.c
frama-c-gui -val tests/misc/CruiseControl*.c (if frama-c-gui is available)
See below for more detailed and specific instructions.
===============================================================================
REQUIREMENTS
===============================================================================
- GNU make version 3.81
- Objective Caml 3.10.2;
OCaml 3.11 is required for native compilation of dynamic plugins.
- Gtk (>= 2.4) and GtkSourceView 1.x
- lablgtk >= 2.12.0
If OcamlGraph >= 1.3 is already installed, then it will be used by Frama-C.
Otherwise the distributed local copy (directory ocamlgraph) will be used.
Plug-ins may have their own requirements.
Consult their specific documentations for details.
===============================================================================
CONFIGURATION
===============================================================================
Frama-C is configured by "./configure [options]"
configure is generated by autoconf, so that the standard options for setting
installation directories are available, in particular '--prefix=/path'.
A plugin can be enabled by --enable-plugin and disabled by --disable-plugin.
By default, all distributed plugins are enabled. Those who defaults to 'no'
are not part of the Frama-C distribution (usually because they are too
experimental to be released as is).
See ./configure --help for the current list of plugins.
Under Cygwin:
-------------
Use "./configure --prefix C:/windows/path/with/direct/slash".
===============================================================================
COMPILATION
===============================================================================
Just execute "make".
Makefile targets that can be interesting are:
- doc generates the API documentation
- ptests generates the executable that takes care of running Frama-C's tests
- oracles set up the tests oracle of Frama-C test suite for your own
configuration.
- tests performs Frama-C's own tests (use it after oracles)
===============================================================================
INSTALLATION
===============================================================================
Just execute "make install"
(depending on the installation directory, may require superuser privileges).
It is possible to perform the installation in a given directory by setting
the DESTDIR variable: "make install DESTDIR=/tmp" installs Frama-C in
sub-directories of /tmp.
The following files are installed.
Executables: (usually in /usr/local/bin)
------------
- frama-c
- frama-c-gui if available
- frama-c.byte bytecode version of frama-c
- frama-c-gui.byte bytecode version of frama-c-gui, if available
- ptests.byte testing tools for Frama-c
Shared files: (usually in /usr/local/share/frama-c)
-------------
- some .h and .c files used as preludes by Frama-C;
- some Makefiles used to compile dynamic plug-ins
- some .rc files used to configure Frama-C
Manuals: (usually in /usr/local/share/frama-c/manuals)
--------
- the Frama-C manuals as .pdf files
Object files: (usually in /usr/local/lib/frama-c)
-------------
- object files used to compile dynamic plug-ins
Plug-in files: (usually in /usr/local/lib/frama-c/plugins)
--------------
- object files of available dynamic plug-ins
Man files: (usually in /usr/local/man/man1)
----------
- man files for frama-c (and frama-c-gui if available)
===============================================================================
CUSTOM INSTALLATION
===============================================================================
You can manually move any installed files. However, in such a case, you have to
set specific environment variables in order that Frama-C found the appropriate
objects when required.
The environment variables are:
------------------------------
FRAMAC_SHARE: absolute path to the Frama-C share subdirectory
FRAMAC_LIB: absolute path of the Frama-C lib subdirectory
FRAMAC_PLUGIN: absolute path of the Frama-C plug-in directory.
===============================================================================
TESTING THE INSTALLATION
===============================================================================
This step is optional.
Test your installation by running:
frama-c -val tests/misc/CruiseControl*.c
frama-c-gui -val tests/misc/CruiseControl*.c (if frama-c-gui is available)
===============================================================================
INSTALLATION OF ADDITIONAL PLUG-INS
===============================================================================
Plug-ins may be released independently of Frama-C.
The standard way for installing them should be:
make && sudo make install
Plug-ins may have their own custom installation procedures.
Consult their specific documentations for details.
===============================================================================
API DOCUMENTATION
===============================================================================
For plug-in developers, the API documentation of the Frama-C kernel and
distributed plug-ins is available in the file frama-c-api.tar.gz.
===============================================================================
UNINSTALLATION
===============================================================================
Just execute "make uninstall" to remove Frama-C and all the installed plug-ins.
That works only if you have not manually moved the installed files (see Section
"Custom Installation").
===============================================================================
HAVE FUN WITH FRAMA-C!
===============================================================================
</pre>