3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2025-04-13 20:38:43 +00:00
Find a file
Dan Liew c8a2b6645a Teach the build system to generate and install a pkg-config file for the
".NET" bindings. This file is required for Monodevelop to find the
bindings because Monodevelop uses pkg-config to find packages
(it doesn't use the GAC).

For lack of a better name the GAC (and pkg-config) package name is now
``Microsoft.Z3.Sharp``. I don't want to call it ``Microsoft.Z3`` because
someone may want to create a ``Microsoft.Z3.pc`` file in the future for
the native Z3 library (i.e. C++ or C bindings).

In addition there is a new utility function ``configure_file()``
which reads a template file, applies some substitutions and writes
the result to another file. This very similar to what CMake does.

There is a new environment variable ``Z3_INSTALL_PKGCONFIG_DIR``
which allows pkgconfig directory to be controlled for the install.
2015-12-05 07:52:31 +00:00
doc C/right on python scripts 2015-06-10 12:01:47 -07:00
examples fix build of maxsat.c 2015-11-22 22:10:22 -08:00
scripts Teach the build system to generate and install a pkg-config file for the 2015-12-05 07:52:31 +00:00
src Teach the build system to generate and install a pkg-config file for the 2015-12-05 07:52:31 +00:00
.gitattributes set text default to auto to try to avoid crlf disasters 2014-04-01 17:20:37 -07:00
.gitignore pull unstable 2015-04-01 14:57:11 -07:00
configure Add configure script that is just a wrapper for python 'src/mk_make.py'. It makes the build more user friendly for users familiar with ./configure + make idiom 2013-01-13 11:34:05 -08:00
LICENSE.txt Move to MIT License 2015-03-26 11:44:49 -07:00
README clarified README with information provided in issue #163. 2015-07-16 10:38:17 -07:00
RELEASE_NOTES add to release notes 2015-10-05 09:31:14 -07:00

Z3 is a theorem prover from Microsoft Research.
Z3 is licensed under the MIT license. 
Z3 can be built using Visual Studio Command Prompt and make/g++.

1) Building Z3 on Windows using Visual Studio Command Prompt
   
32-bit builds, start with:

   python scripts/mk_make.py

or instead, for a 64-bit build:

   python scripts/mk_make.py -x

then:

   cd build
   nmake

2) Building Z3 using make/g++ and Python
Execute:

   python scripts/mk_make.py
   cd build
   make
   sudo make install

By default, it will install z3 executable at PREFIX/bin, libraries at PREFIX/lib, and include files at PREFIX/include,
where PREFIX is the installation prefix used for installing Python in your system.
It is usually /usr for most Linux distros, and /usr/local for FreeBSD.
Use the following commands to install in a different prefix (e.g., /home/leo)

  python scripts/mk_make.py --prefix=/home/leo
  cd build
  make
  make install

In this example, the Z3 Python bindings will be stored at /home/leo/lib/pythonX.Y/dist-packages,
where X.Y corresponds to the python version in your system.

To uninstall Z3, use

  sudo make uninstall

4) Building Z3 using clang and clang++ on Linux/OSX
Remark: clang does not support OpenMP yet.   

   CXX=clang++ CC=clang python scripts/mk_make.py
   cd build
   make


To clean Z3 you can delete the build directory and run the mk_make.py script again.