Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
F
frama-c
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Deploy
Releases
Container Registry
Model registry
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
pub
frama-c
Commits
e1150d4b
Commit
e1150d4b
authored
2 years ago
by
Allan Blanchard
Browse files
Options
Downloads
Patches
Plain Diff
[doc] cont'd INSTALL.md
parent
0608cac6
No related branches found
No related tags found
No related merge requests found
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
INSTALL.md
+37
-19
37 additions, 19 deletions
INSTALL.md
share/Makefile.common
+1
-1
1 addition, 1 deletion
share/Makefile.common
with
38 additions
and
20 deletions
INSTALL.md
+
37
−
19
View file @
e1150d4b
...
...
@@ -320,13 +320,13 @@ Arch Linux: `pikaur -S frama-c`
2.
On Linux-like distributions:
./
configure && make && sudo
make install
./
make RELEASE=yes &&
make install
See section *Configuration* below for options.
3.
On Windows+Cygwin:
./
configure --prefix="$(cygpath -a -m <installation path>)" && make
&& make install
./
make RELEASE=yes
&& make install
4.
The binary
`frama-c`
(and
`frama-c-gui`
if you have lablgtk2) is now installed.
...
...
@@ -350,26 +350,48 @@ root source folder):
#### Compilation
T
ype
`make`
(you can use
`-j`
for parallelization)
.
T
here are basically two compilation modes: development and release
.
Some Makefile targets of interest are:
-
`doc`
generates the API documentation.
-
`tests`
performs Frama-C's own tests.
Typing
`make`
builds in development mode, this is a shortcut for:
```
dune build @install
```
Typing
`make RELEASE=yes`
builds in release mode, this is shortcut for:
```
dune build @install --release --promote-install-files=false
```
For more precise build configuration, use directly the
`dune`
command.
#### Testing
Basic tests can be executed using:
```
make run-ptests
dune build @ptests_config
```
#### Installation
Type
`make install`
(depending on t
he installation directory
, this may require superuser
privileges. The installation directory is chosen through
`--prefix`
).
Type
`make install`
(depending on the installation directory, this may require
superuser privileges. T
he installation directory
is chosen through the variable
`INSTALLDIR`
). This is a shortcut for:
```
dune install
```
#### API Documentation
For plugin developers, the API documentation of the Frama-C kernel and
distributed plugins is available in the
file
`frama-c-api.tar.gz`
, after running
`make doc-distrib`
.
distributed plugins is available in the
`_build/default/_doc/_html`
directory
after running:
```
dune build @doc
```
#### Uninstallation
...
...
@@ -409,9 +431,9 @@ available:
-
`frama-c`
-
`frama-c-gui`
if available
-
`frama-c-config`
lightweight wrapper used to display configuration paths
-
`frama-c
.byte`
bytecode version of f
rama-
c
-
`frama-c-
gui.byte`
bytecode version of frama-c-gui, if available
-
`
ptests.opt`
testing tool for Frama-c
-
`frama-c
-hdrck`
header checking tool for F
rama-
C
-
`frama-c-
ptests`
testing tool for Frama-c
-
`
frama-c-wtests`
testing tool for Frama-c
-
`frama-c-script`
utilities related to analysis parametrization
## Shared files: (in `/INSTALL_DIR/share/frama-c` and subdirectories)
...
...
@@ -425,10 +447,6 @@ available:
-
an annotated C standard library (with ACSL annotations) in
`libc`
-
plugin-specific files (in directories
`wp`
,
`e-acsl`
, etc.)
## Documentation files: (in `/INSTALL_DIR/share/frama-c/doc`)
-
files used to generate dynamic plugin documentation
## Object files: (in `/INSTALL_DIR/lib/frama-c`)
-
object files used to compile dynamic plugins
...
...
@@ -448,7 +466,7 @@ Plugins may be released independently of Frama-C.
The standard way for installing them should be:
./configure && make
&&
mak
e install
dune build @install
&&
dun
e install
Plugins may have their own custom installation procedures.
Consult their specific documentation for details.
...
...
This diff is collapsed.
Click to expand it.
share/Makefile.common
+
1
−
1
View file @
e1150d4b
...
...
@@ -34,7 +34,7 @@ DUNE_BUILD_OPTS?=
RELEASE
?=
no
ifeq
($(RELEASE),yes)
DUNE_BUILD_OPTS
+=
--release
DUNE_BUILD_OPTS
+=
--release
--promote-install-files
=
false
endif
# DUNE_DISPLAY: chose Dune build verbosity (see '--display' dune option)
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment