docs/ct-ng.1.in
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Mon Jul 02 17:51:19 2007 +0000 (2007-07-02)
changeset 195 1ee5aab4c728
child 197 9383bf4a2e2e
permissions -rw-r--r--
Bump version.
yann@182
     1
." crosstool-ng man page
yann@182
     2
." Copyright 2007 Yann E. MORIN
yann@182
     3
." Licensed under the Creative Commons BY-SA, v2.5
yann@182
     4
."
yann@182
     5
." Beautifying URLs
yann@182
     6
.mso www.tmac
yann@182
     7
."
yann@182
     8
.TH ct-ng 1 "@@CT_DATE@@" "version @@CT_VERSION@@" "User Commands"
yann@182
     9
."
yann@182
    10
."
yann@182
    11
.SH NAME
yann@182
    12
ct-ng, crosstool-ng \- Build cross-toolchains
yann@182
    13
."
yann@182
    14
."
yann@182
    15
.SH SYNOPSIS
yann@182
    16
.B ct-ng ACTION
yann@182
    17
."
yann@182
    18
."
yann@182
    19
.SH DESCRIPTION
yann@182
    20
Building a cross-toolchain can be a real pain.
yann@182
    21
.PP
yann@182
    22
.B ct-ng
yann@182
    23
makes it easy to build cross-toolchains, and allows you to take all the juice
yann@182
    24
out of your target by configuring the differents components of the toolchain
yann@182
    25
accordingly to the targeted processor.
yann@182
    26
."
yann@182
    27
."
yann@182
    28
.SH ACTIONS
yann@182
    29
Here are the most commonly used actions. For other actions, please see
yann@182
    30
.I @@CT_DOCDIR@@/overview.txt
yann@182
    31
.TP
yann@182
    32
.B help
yann@182
    33
Prints a little help text.
yann@182
    34
."
yann@182
    35
.TP
yann@182
    36
.B menuconfig
yann@182
    37
Configures
yann@182
    38
.B ct-ng
yann@182
    39
using a configurator menu very similar to that of the Linux kernel.
yann@182
    40
."
yann@182
    41
.TP
yann@182
    42
.B oldconfig
yann@182
    43
Apply options found in an existing
yann@182
    44
.I .config
yann@182
    45
file, and ask for newer options if there are any.
yann@182
    46
."
yann@182
    47
.TP
yann@182
    48
.B saveconfig
yann@182
    49
Save the current
yann@182
    50
.B ct-ng
yann@182
    51
configuration, and associated components' config files, into a sample. Samples
yann@182
    52
are saved in their own sub-directory, named after the target's triplet, in the
yann@182
    53
.I samples
yann@182
    54
sub-directory of the current directory.
yann@182
    55
If that was not clear:
yann@182
    56
.I `pwd`/samples/${CT_TARGET}/
yann@182
    57
yann@182
    58
Samples can be later recalled by calling
yann@182
    59
.B ct-ng
yann@182
    60
with the target triplet they represent.
yann@182
    61
."
yann@182
    62
.TP
yann@182
    63
.B build
yann@182
    64
Builds the configured toolchain. If
yann@182
    65
.B ct-ng
yann@182
    66
is called without action, then
yann@182
    67
.B build
yann@182
    68
is impiled.
yann@182
    69
."
yann@182
    70
.TP
yann@182
    71
.B liststeps
yann@182
    72
Lists all build steps available (see 
yann@182
    73
.BR ENVIRONMENT,
yann@182
    74
below).
yann@182
    75
."
yann@182
    76
.TP
yann@182
    77
.B clean
yann@182
    78
Remove files generated by
yann@182
    79
.B ct-ng
yann@182
    80
for itself (these are mostly the configurators' binaries).
yann@182
    81
."
yann@182
    82
.TP
yann@182
    83
.B distclean
yann@182
    84
Same as
yann@182
    85
.B clean
yann@182
    86
, but also removes the toolchain build directory, the downloaded files and the
yann@182
    87
.I .config
yann@182
    88
configuration file. The generated toolchain is left untouched, as well as
yann@182
    89
samples which are not removed.
yann@182
    90
."
yann@182
    91
.TP
yann@182
    92
.B regtest
yann@182
    93
Calls the
yann@182
    94
.B ct-ng
yann@182
    95
regression test suite. All samples are build, and the regression test suite is
yann@182
    96
run against every one of them.
yann@182
    97
."
yann@182
    98
.TP
yann@182
    99
.B updatetools
yann@182
   100
Updates the
yann@182
   101
.I config.guess
yann@182
   102
and
yann@182
   103
.I config.sub
yann@182
   104
scripts. These scripts are used by
yann@182
   105
.B ct-ng
yann@182
   106
to canonicalise the machines' name (host, build and target machines).
yann@182
   107
.TP
yann@182
   108
.B tarball
yann@182
   109
Builds a tarball of the generated toolchain, also saving the scripts from
yann@182
   110
.B ct-ng
yann@182
   111
that are needed to rebuild the target, and also saving the tarballs of the
yann@182
   112
componnents that were used.
yann@182
   113
."
yann@182
   114
.SH ENVIRONMENT
yann@182
   115
.TP
yann@182
   116
.B STOP, START
yann@182
   117
Respectively stops and restarts the build just before this step. To restart a
yann@182
   118
step, a previous build should have run at least to that step, or further.
yann@182
   119
yann@182
   120
The list of steps is vailable with the action
yann@182
   121
.BR liststeps .
yann@182
   122
."
yann@182
   123
.SH EXIT VALUE
yann@182
   124
The
yann@182
   125
.B ct-ng
yann@182
   126
frontend is in fact a
yann@182
   127
.BR make (1)
yann@182
   128
script. See the man page for
yann@182
   129
.BR make (1)
yann@182
   130
to have the meaning of the exit values.
yann@182
   131
."
yann@182
   132
.SH BUGS
yann@182
   133
As of today (@@CT_DATE@@), building tarballs is broken. It is difficult to
yann@182
   134
foresee how every parts of
yann@182
   135
.B ct-ng
yann@182
   136
are going to be installed. Each parts is needed to build a tarball, as it
yann@182
   137
contains all that is needed to rebuild the toolchain from scratch: toolchain
yann@182
   138
components' sources,
yann@182
   139
.B ct-ng
yann@182
   140
configuration, but also all
yann@182
   141
.B ct-ng
yann@182
   142
scripts.
yann@182
   143
."
yann@182
   144
.SH SECURITY
yann@182
   145
.B Don't run as root!
yann@182
   146
Great care has been taken to avoid mistakes, but bug-free programs don't
yann@182
   147
exist. During normal operation,
yann@182
   148
.B ct-ng
yann@182
   149
removes entire directories. If you run as root, and there is a bug or you
yann@182
   150
mis-configured
yann@182
   151
.BR ct-ng ,
yann@182
   152
entire important directories could be removed (eg.
yann@182
   153
.IR /usr ),
yann@182
   154
although
yann@182
   155
.B ct-ng
yann@182
   156
will refuse to install in some well known critical directories.
yann@182
   157
."
yann@182
   158
.SH AUTHORS
yann@182
   159
.MTO "yann.morin.1998@anciens.enib.fr" "Yann E. MORIN" ""
yann@182
   160
.URL "http://ymorin.is-a-geek.org" "" ""
yann@182
   161
reordered
yann@182
   162
.B crosstool
yann@182
   163
(see section titled
yann@182
   164
.BR "SEE ALSO" )
yann@182
   165
scripts to be more easily maintainable, added the Kconfig configurator, some
yann@182
   166
patches.
yann@182
   167
yann@182
   168
Please consult the file
yann@182
   169
.I @@CT_DOCDIR@@/CREDITS
yann@182
   170
for a list of contributors.
yann@182
   171
."
yann@182
   172
.SH SEE ALSO
yann@182
   173
Please have a look at the
yann@182
   174
.URL "http://www.kegel.com/crosstool" "original crosstool" " by Daniel KEGEL"