summaryrefslogtreecommitdiff
path: root/README
blob: 562ae39388d803fe77e651c14354814cdefc853e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
This is a prerelease version of CVC4.

*** Quick-start instructions

To build, you'll need reasonably new automake, autoconf, and libtool
installed (see below). Execute,

    ./autogen.sh 
    ./configure
    make

You can then "make install" to install in the prefix you gave to
the configure script (/usr/local by default).

To build a source release, use "make dist"; this will include the
configure script and all the bits of automake/autoconf/libtool that
are necessary for an independent install.  You'll find the resulting
tarball in builds/cvc4-${VERSION}.tar.gz.

To build documentation, use "make doc".  Documentation is produced
under doc/ but is not installed by "make install".

*** Dependencies

The following tools and libraries are required to run CVC4. Versions
given are minimum versions; more recent versions should be compatible.

GNU C and C++ (gcc and g++), reasonably recent versions
GNU Make
GMP v4.2 (GNU Multi-Precision arithmetic library)
libantlr3c v3.2 (ANTLR parser generator)
Optional: CLN v1.3 (Class Library for Numbers)
Optional: CUDD v2.4.2 (Colorado University Decision Diagram package)
Optional: GNU Readline library (for an improved interactive experience)

CUDD, if desired, must be installed delicately.  The CVC4 configure
script attempts to auto-detect the locations and names of CUDD headers
and libraries the way that the Fedora RPMs install them, the way that
our NYU-provided Debian packages install them, and the way they exist
when you download and build the CUDD sources directly.  If you install
from Fedora RPMs or our Debian packages (remember, you need the C++
development package for CVC4), the process should be completely
automatic, since the libraries and headers are installed in a standard
location.  If you download the sources yourself, you need to build
them in a special way.  Fortunately, the "contrib/build-cudd-with-libtool.sh"
script in the CVC4 source tree does exactly what you need: it patches
the CUDD makefiles to use libtool, builds the libtool libraries, then
reverses the patch to leave the makefiles as they were.  Once you
run this script on an unpacked CUDD 2.4.2 source distribution, then
CVC4's configure script should pick up the libraries if you provide
--with-cudd-dir=/PATH/TO/CUDD/SOURCES.

If you want to force linking to CUDD, provide --with-cudd to the
configure script; this makes it a hard requirement rather than an
optional add-on.

The NYU-provided Debian packaging of CUDD 2.4.2 is here:

  deb http://goedel.cims.nyu.edu/cvc4-builds/debian unstable/

The Debian source package "cudd", available from the same repository,
includes a diff of all changes made to cudd makefiles.

*** Build dependencies

The following tools and libraries are required to build CVC4 from
scratch. 

Automake v1.11
Autoconf v2.61 
Libtool v2.2
ANTLR3 v3.2

*** Emacs mode

For a suggestion of editing CVC4 code with emacs, see README.emacs.

generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback