[ << ] | [ >> ] |  |  |  |  |  | [Top] | [Contents] | [Index] | [ ? ]

# A. Obtaining and Installing

Proof General has its own home page hosted at Edinburgh. Visit this page for the latest news!

## A.1 Obtaining Proof General

You can obtain Proof General from the URL

    http://proofgeneral.inf.ed.ac.uk.

The distribution is available in as a tarball. It may be redistributed by third party packagers in other forms.

Two versions are available:

- The current stable version,
  http://proofgeneral.inf.ed.ac.uk/ProofGeneral-stable.tgz
- The latest development version,
  http://proofgeneral.inf.ed.ac.uk/ProofGeneral-latest.tgz

The source tarball includes the generic elisp code, and code for LEGO, Coq, Isabelle, and other provers. Also included are installation instructions (reproduced in brief below) and this documentation.

For access to the source code repository, please see the Proof General web page http://proofgeneral.inf.ed.ac.uk/devel.

## A.2 Installing Proof General from tarball

Copy the distribution to some directory mydir. Unpack it there. For example:

    # cd mydir
    # tar -xpzf ProofGeneral-version.tgz

If you downloaded the version called latest, you’ll find it unpacks to a numeric version number.

Proof General will now be in some subdirectory of mydir. The name of the subdirectory will depend on the version number of Proof General. For example, it might be ‘`ProofGeneral-4.0`’. It’s convenient to link it to a fixed name:

    # ln -sf ProofGeneral-4.0 ProofGeneral

Now put this line in your ‘`.emacs`’ file:

        (load-file "mydir/ProofGeneral/generic/proof-site.el")

## A.3 Setting the names of binaries

The `load-file` command you have added will load ‘`proof-site`’ which sets the Emacs load path for Proof General and add auto-loads and modes for the supported assistants.

The default names for proof assistant binaries may work on your system. If not, you will need to set the appropriate variables. The easiest way to do this (and most other customization of Proof General) is via the Customize mechanism, see the menu item:

      Proof-General -> Advanced -> Customize -> Name of Assistant -> Prog Name

The Proof-General menu is available from script buffers after Proof General is loaded. To load it manually, type

      M-x load-library RET proof RET

If you do not want to use customize, simply add a line like this:

      (setq coq-prog-name "/usr/bin/coqtop -emacs")

to your ‘`.emacs`’ file.

## A.4 Notes for syssies

Here are some more notes for installing Proof General in more complex ways. Only attempt things in this section if you really understand what you’re doing!

### Byte compilation

Compilation of the Emacs lisp files improves efficiency but can sometimes cause compatibility problems, especially if you use more than one version of Emacs with the same `.elc` files.

If you discover problems using the byte-compiled `.elc` files which aren’t present using the source `.el` files, please report them to us.

You can compile Proof General by typing `make` in the directory where you installed it. It may be necessary to do this if you use a different version of Emacs.

### Site-wide installation

If you are installing Proof General site-wide, you can put the components in the standard directories of the filesystem if you prefer, providing the variables in ‘`proof-site.el`’ are adjusted accordingly (see Proof General site configuration in Adapting Proof General for more details). Make sure that the ‘`generic/`’ and assistant-specific elisp files are kept in subdirectories (‘`coq/`’, ‘`isa/`’, ‘`lego/`’) of `proof-home-directory` so that the autoload directory calculations are correct.

To prevent every user needing to edit their own ‘`.emacs`’ files, you can put the `load-file` command to load ‘`proof-site.el`’ into ‘`site-start.el`’ or similar. Consult the Emacs documentation for more details if you don’t know where to find this file.

### Removing support for unwanted provers

You cannot run more than one instance of Proof General at a time: so if you’re using Coq, visiting an ‘`.ML`’ file will not load Isabelle Proof General, and the buffer remains in fundamental mode. If there are some assistants supported that you never want to use, you can adjust the variable `proof-assistants` in ‘`proof-site.el`’ to remove the extra autoloads. This is advisable in case the extensions clash with other Emacs modes, for example Verilog mode for ‘`.v`’ files clashes with Coq mode.

See Proof General site configuration in Adapting Proof General, for more details of how to adjust the `proof-assistants` setting.

Instead of altering `proof-assistants`, a simple way to disable support for some prover is to delete the relevant directories from the PG installation. For example, to remove support for Coq, delete the ‘`coq`’ directory in the Proof General home directory.

[ << ] | [ >> ] |  |  |  |  |  | [Top] | [Contents] | [Index] | [ ? ]

This document was generated by David Aspinall on October 19, 2012 using texi2html 1.82.