# NASM - The Netwide Assembler

version 2.16.03

## Appendix D: Building NASM from Source

The source code for NASM is available from our website, http://wwww.nasm.us/, see section E.1.

### D.1 Building from a Source Archive

The source archives available on the web site should be capable of building on a number of platforms. This is the recommended method for building NASM to support platforms for which executables are not available.

On a system which has Unix shell (`sh`), run:

         sh configure
         make everything

A number of options can be passed to `configure`; see `sh configure --help`.

A set of Makefiles for some other environments are also available; please see the file `Mkfiles/README`.

To build the installer for the Windows platform, you will need the Nullsoft Scriptable Installer, NSIS, installed.

To build the documentation, you will need a set of additional tools. The documentation is not likely to be able to build on non-Unix systems.

### D.2 Building from the `git` Repository

The NASM development tree is kept in a source code repository using the `git` distributed source control system. The link is available on the website. This is recommended only to participate in the development of NASM or to assist with testing the development code.

To build NASM from the `git` repository you will need a Perl interpreter and, if building on a Unix system, GNU autoconf installed on your system.

To build on a Unix system, run:

         sh autogen.sh

to create the `configure` script and then build as listed above.

### D.3 Building the documentation

To build the documentation, you will need a Perl interpreter, a Postscript to PDF converter such as Ghostscript, and suitable fonts installed on your system. The recommended (and default) fonts are Adobe's Source Sans and Source Code fonts, which are freely available under the SIL Open Font License.