crosstool-NG(1)

NAME
ct-ng, crosstool-NG - Build cross-toolchains

SYNOPSIS
ct-ng ACTION

DESCRIPTION
Building a cross-toolchain can be a real pain.

crosstool-NG makes it easy to build cross-toolchains, and allows you to take all the juice out of your target by configuring the different components of the toolchain accordingly to the targeted processor.

ACTIONS
Here are the most commonly used actions. For other actions, please see @@CT_DOCDIR@@/0 - Table of content.txt

help
    Prints a little help text.

menuconfig
    Configures crosstool-NG using a configurator menu very similar to that of the Linux kernel.

oldconfig
    Apply options found in an existing .config file, and ask for newer options if there are any.

saveconfig
    Save the current crosstool-NG configuration, and associated components' config files, into a sample. Samples are saved in their own sub-directory, named after the target's tuple, in the samples sub-directory of the current directory. If that was not clear: `pwd`/samples/${CT_TARGET}/ Samples can be later recalled by calling ct-ng with the target tuple they represent.

build
    Builds the configured toolchain.

clean
    Remove files generated by crosstool-NG for itself (these are mostly the configurators' binaries).

distclean
    Same as clean , but also removes the toolchain build directory, the downloaded files and the .config configuration file. The generated toolchain is left untouched, as well as samples which are not removed.

regtest
    Calls the crosstool-NG regression test suite. All samples are build, and the regression test suite is run against every one of them.

updatetools
    Updates the config.guess and config.sub scripts. These scripts are used by crosstool-NG to canonicalise the machines' name (host, build and target machines).

tarball
    Builds a tarball of the generated toolchain, also saving the scripts from crosstool-NG that are needed to rebuild the target, and also saving the tarballs of the componnents that were used.

ENVIRONMENT

STOP, START
    Respectively stops and restarts the build just before this step. To restart a step, a previous build should have run at least to that step, or further. The list of steps is vailable with the action list-steps.

EXIT VALUE
The ct-ng frontend is in fact a make(1) script. See the man page for make(1) to have the meaning of the exit values.

BUGS
As of today (@@CT_DATE@@), building tarballs is broken. It is difficult to foresee how every parts of crosstool-NG are going to be installed. Each parts is needed to build a tarball, as it contains all that is needed to rebuild the toolchain from scratch: toolchain components' sources, crosstool-NG configuration, but also all crosstool-NG scripts.

SECURITY
Don't run as root! Great care has been taken to avoid mistakes, but bug-free programs don't exist. During normal operation, crosstool-NG removes entire directories. If you run as root, and there is a bug or you mis-configured crosstool-NG, entire important directories could be removed (eg. /usr), although crosstool-NG will refuse to install toolchains in some well known critical directories.

AUTHORS
Please consult the file @@CT_DOCDIR@@/CREDITS for a list of contributors.

SEE ALSO
You can find more in-depth documentation in @@CT_DOCDIR@@/0 - Table of content.txt. Please have a look at the