You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- Explain how to install Alt-Ergo binary with `dune install`.
- Simplify the Makefile targets for JavaScript artifacts.
- Remove documentation about AB-Why3 plugin and mention it was
deprecated and removed.
- Reorganize a bit the documentation of the installation and move
developer-specific details to the developer documentations. In
particular.
- Remove the documentation about `install` and `install-all` targets, as
no one uses them and the user cannot specify a prefix directory with
them. I kept them for the CI.
|`make bin`| Builds the Alt-Ergo binary and library. |
76
+
|`make lib`| Builds only the Alt-Ergo library. |
77
+
|`make js`| Builds the Alt-Ergo artifacts for JavaScript. |
78
+
|`make plugins`| Builds the Alt-Ergo plugins. |
79
+
|`make`| Builds everything. |
80
+
53
81
## Release Process
54
82
55
83
Alt-Ergo releases do not have a fixed schedule and are made based on features. We try to maintain the main branch (`next`) of the repository as stable as possible, and cut a release from there when an important feature is complete. We also make point release to fix important bugs.
This page explains how to install both the Alt-Ergo releases and the
4
+
development versions. If you are interested in contributing to this project,
5
+
please refer to the developer documentation.
4
6
5
-
Alt-ergo is available on [opam], the ocaml package manager with the following command :
6
-
```console
7
-
opam install alt-ergo
8
-
```
9
-
10
-
This command will install the Alt-ergo library `alt-ergo-lib`, as well as other librairies detailled in [dependencies](#dependencies).
7
+
## Releases
11
8
12
-
Since version 2.6.0, Alt-Ergo is compatible with opam 2.2 installations using both Cygwin and MSYS2 on Windows. To setup opam on Windows, please follow the instructions [here](https://ocamlpro.com/blog/2024_07_01_opam_2_2_0_releases/).
13
-
14
-
## From GitHub releases (Linux and macOS)
15
-
16
-
For convenience, binary releases for Linux and macOS (amd64 and arm64) of
17
-
Alt-Ergo are provided on the GitHub release page. These binary releases are
18
-
statically linked and very portable. They are distributed under the same
19
-
licensing restrictions as the source code.
20
-
21
-
## From sources
22
-
23
-
### Dependencies
24
-
25
-
External dependencies graph generated with `dune-deps` (use `make archi` for source files dependencies):
26
-
27
-

28
-
29
-
To compile the sources of the library `alt-ergo-lib` and the binary `alt-ergo`, you will need the
30
-
following libraries :
31
-
```
32
-
ocaml >= 4.08.1
33
-
dune >= 3.0
34
-
dune-build-info
35
-
dune-site
36
-
dolmen >= 0.10
37
-
dolmen_type >= 0.10
38
-
dolmen_loop >= 0.10
39
-
ocplib-simplex >= 0.5.1
40
-
zarith >= 1.11
41
-
seq
42
-
fmt >= 0.9.0
43
-
ppx_blob >= 0.7.2
44
-
camlzip >= 1.07
45
-
menhir
46
-
dune-site
47
-
cmdliner >= 1.1.0
48
-
psmt2-frontend >= 0.4
49
-
stdlib-shims
50
-
ppx_deriving
51
-
```
52
-
53
-
You can install dependencies using:
9
+
### Installing via opam
54
10
11
+
The recommended way to install Alt-Ergo releases is throught the OCaml package
12
+
manager [opam]. Simply run:
55
13
```console
56
-
$ make deps
14
+
opam install alt-ergo
57
15
```
16
+
to install the latest Alt-Ergo release in the current switch.
58
17
59
-
and create a development switch with:
60
-
18
+
A free version of Alt-Ergo is also available on opam. To install it, run:
61
19
```console
62
-
$ make dev-switch
63
-
```
64
-
65
-
### Build and Install
66
-
67
-
The steps below will build and install native or bytecode binaries
68
-
depending on whether ocamlopt is installed or only ocamlc is detected.
69
-
70
-
Note: these are somewhat obsolete; nowadays you can just use `dune`
71
-
72
-
#### Everything (binaries, plugins, library, ...)
73
-
74
-
1. Compile with `make`
75
-
76
-
2. Install with `make install-all`
77
-
78
-
3. Uninstall with `make uninstall-all`
79
-
80
-
#### Alt-Ergo library
81
-
82
-
1. Compile with `make alt-ergo-lib`
83
-
84
-
2. Install with `make install-lib`
85
-
86
-
#### Alt-Ergo binary
87
-
88
-
1. Compile with `make alt-ergo`
89
-
90
-
2. Install with `make install-bin`
91
-
92
-
#### Alt-Ergo with Nodejs
93
-
94
-
You can install dependencies using:
95
-
96
-
```
97
-
$ make js-deps
20
+
opam install alt-ergo-free
98
21
```
99
22
100
-
1. Compile with `make js-node`
101
-
102
-
For this build rule you will need the following aditional libraries :
103
-
```
104
-
js_of_ocaml >= 5.4.0
105
-
zarith_stubs_js >= v0.16.1
106
-
```
23
+
### Installing via GitHub releases (Linux and macOS)
107
24
108
-
#### Alt-Ergo web worker
25
+
For convenience, binary releases for Linux and macOS (amd64 and arm64) of
26
+
Alt-Ergo are provided on the [GitHub release page](https://github.com/OCamlPro/alt-ergo/releases).
27
+
These binary releases are statically linked and very portable.
28
+
They are distributed under the same licensing restrictions as the source code.
109
29
110
-
1. Compile with `make js-worker`
30
+
## Development versions
111
31
112
-
For this build rule you will need the following aditional libraries :
32
+
### Installing via opam
33
+
To install the development version of Alt-Ergo from a cloned Git repository,
34
+
run at the root of the repository:
113
35
```
114
-
js_of_ocaml >= 5.4.0
115
-
js_of_ocaml-lwt
116
-
zarith_stubs_js >= v0.16.1
117
-
data-encoding
36
+
opam install .
118
37
```
38
+
This installs `alt-ergo`, `alt-ergo-lib` and all their dependencies in the
39
+
current switch.
119
40
120
-
#### Alt-Ergo web worker small example
121
-
122
-
1. Compile with `make js-example`
123
-
124
-
This command create a `www/` directory in which you can find a small js example running in the `index.html` file
125
-
126
-
For this build rule you will need the following aditional libraries :
41
+
### Installing via Dune
42
+
If you prefer install Alt-Ergo binary in a specific prefix directory [DIR], use
43
+
the following commands:
127
44
```
128
-
js_of_ocaml >= 5.4.0
129
-
js_of_ocaml-lwt
130
-
js_of_ocaml-ppx
131
-
lwt_ppx
132
-
zarith_stubs_js >= v0.16.1
133
-
data-encoding
45
+
make deps
46
+
make bin
47
+
dune install -p alt-ergo --prefix DIR
134
48
```
135
49
136
50
### Plugins
137
51
138
-
The steps below will build and install additional plugins (extension
139
-
.cmxs if ocamlopt is installed or .cma if only ocamlc is detected).
140
-
141
-
#### The SatML Plugin
142
-
143
-
satML is now inlined and compiled directly with Alt-Ergo's source code
52
+
The steps below will build and install additional plugins.
144
53
145
54
#### The Fm-Simplex Plugin
146
55
@@ -151,18 +60,8 @@ The steps below will build and install additional plugins (extension
151
60
152
61
#### The AB-Why3 parser plugin
153
62
154
-
1. Compile with `make AB-Why3`
155
-
156
-
2. The AB-Why3 plugin is currently built and installed
157
-
at the same time as the alt-ergo binary.
158
-
159
-
You can find more information in the [AB-Why3 README]
160
-
161
-
#### The profiler plugin
162
-
163
-
This plugin has been "inlined" in Alt-Ergo sources.
164
-
63
+
This plugin was deprecated in Alt-Ergo 2.6.0 and removed in Alt-Ergo
Copy file name to clipboardExpand all lines: docs/sphinx_docs/index.md
-1Lines changed: 0 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -18,7 +18,6 @@ Alt-ergo supports different input languages:
18
18
- Alt-ergo supports the SMT-LIB language v2.6. **This is Alt-Ergo's preferred
19
19
and recommended input format.**
20
20
- The original input language is its native language, based on the language of the Why3 platform. Since the version 2.6.0, this language is deprecated.
21
-
- It also (partially) supports the input language of Why3 through the [AB-Why3 plugin](../Plugins/ab_why3).
0 commit comments