# Installing and using SkoolKit

## Requirements

SkoolKit requires Python 3.10+. If you’re running Linux or one of the BSDs, you probably already have Python installed. If you’re running Windows, you can get Python here.

## Installation

There are various ways to install the latest stable release of SkoolKit:

- from the zip archive or tarball available at skoolkit.ca

- from the zip archive or tarball available at GitHub

- from PyPI by using pip

If you choose the zip archive or tarball, note that SkoolKit can be used wherever it is unpacked: it does not need to be installed in any particular location.

## C extension modules

If you obtained SkoolKit from a zip archive or tarball, and you want to make use of the C extension modules (for faster Z80 simulation), then you will need to build them first. This requires a compiler, the setuptools package, and the development headers for the version of Python you’re using. Once these are ready, run the following command in the directory where SkoolKit was unpacked:

    $ python setup.py build_ext -i

You may need to replace the `python` in this command with `python3`, `py`, or the path to the Python executable, depending on the OS you’re using.

To see a list of the compilers that may be used to build the C extension modules, run the following command:

    $ python setup.py build_ext --help-compiler

## Linux/*BSD v. Windows command line

Throughout this documentation, commands that must be entered in a terminal window (‘Command Prompt’ in Windows) are shown on a line beginning with a dollar sign (`$`), like this:

    $ some-script.py some arguments

On Windows, and on Linux/*BSD if SkoolKit has been installed as a Python package (using ‘pip’), the commands may be entered exactly as they are shown. On Linux/*BSD, use a dot-slash prefix (e.g. `./some-script.py`) if the script is being run from the current working directory.