NOTE: Avoid to mix a binary version of PEP with the sources, so untar the sources to a different directory than any binary version (e.g. make a directory pep-src and untar sources in this directory).
The structure of the newly created directory is as follows:doc some documentation (including this document)
Examples some examples showing most of the capabilities of PEP
pep is the pre-install directory. All built binaries will be
placed here together with everything else needed for a complete distribution of PEP
binaries.
externals directory for additional tools.
Read the documentation on external tools later in this document.
src finally, here you'll find the source of all PEP tools.
The variable TOP has to point to the src directory. The next lines
contain some more paths which you have to adjust according to your local system.
Please use the compiler option format for these lines to specify Library and
Include paths, i.e. use -L/path/to/libs and -I/path/to/incs if not stated otherwise.
When done you change to the main directory pep and type make. Be sure
to use GNU make, as conditionals are used. The makefile will create the necessary
files in pep/src and after that the libraries and binaries. Finally, all needed
files are copied to pep/pep and a tar file is created from
this directory. As a last step the contents of this file is compared to the
correct contents found in doc/MANIFEST. You are noticed of any
differences found.
If something fails due to wrong compilation tools setup, you can edit
pep/Makefile, which contains some variables to change global tool
settings. Also check later sections of pep/src/config/Imake.tmpl.
Further compilations after code changes can be made directly from the
src directory or from subdirectories, as all dependencies are made up
the first time. A make install will copy the new files to the destination.
An updated tar file can be generated from the main directory without recompiling
everything by make dist.
Using Cygwin instead of Linux or Unix like systems should not change that much. All development tools needed have to be accessible inside Cygwin. The CVS version of PEP always uses the latest stable versions, with one important exception. At least for me, the fileutils version 4.1-2 is not working, so I have installed version 4.1-1, which is working flawlessly. The problems had been mentioned in the Cygwin lists, but had not been fixed, yet. So if you get error messages about failed copy actions due to "the same file", install the previous version of fileutils.
The rest should work as expected and as described above.
This documentation should help for a first test of PEP compilation. Please contact the PEP developers team for more info and for discussions on the work to be done!
PEP provides access to a variety of different model checking techniques. Many of them were not implemented by us and are thus just packaged with PEP. If you want to compile your own version you can check the following web pages.
If you have the PEP sources installed on your system you can easily download and build external tools. Support by makefiles, patches and download scripts are available in the pep/externals directory.
You have three options to choose from:make download. This will download all tar files to pep/externals/archive.
make.
make tool.