summaryrefslogtreecommitdiff
path: root/docs/ct-ng.1.in
blob: 49dbdcaad0f220c10034ea36b4d4d192921400af (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
." crosstool-NG man page
." Copyright 2007 Yann E. MORIN
." Licensed under the Creative Commons BY-SA, v2.5
."
." Beautifying URLs
.mso www.tmac
."
.TH crosstool-NG 1 "@@CT_DATE@@" "version @@CT_VERSION@@" "User Commands"
."
."
.SH NAME
ct-ng, crosstool-NG \- Build cross-toolchains
."
."
.SH SYNOPSIS
.B ct-ng ACTION
."
."
.SH DESCRIPTION
Building a cross-toolchain can be a real pain.
.PP
.B 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.
."
."
.SH ACTIONS
Here are the most commonly used actions. For other actions, please see
.I @@CT_DOCDIR@@/overview.txt
.TP
.B help
Prints a little help text.
."
.TP
.B menuconfig
Configures
.B crosstool-NG
using a configurator menu very similar to that of the Linux kernel.
."
.TP
.B oldconfig
Apply options found in an existing
.I .config
file, and ask for newer options if there are any.
."
.TP
.B saveconfig
Save the current
.B 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
.I samples
sub-directory of the current directory.
If that was not clear:
.I `pwd`/samples/${CT_TARGET}/

Samples can be later recalled by calling
.B ct-ng
with the target tuple they represent.
."
.TP
.B build
Builds the configured toolchain.
."
.TP
.B liststeps
Lists all build steps available (see 
.BR ENVIRONMENT,
below).
."
.TP
.B clean
Remove files generated by
.B crosstool-NG
for itself (these are mostly the configurators' binaries).
."
.TP
.B distclean
Same as
.B clean
, but also removes the toolchain build directory, the downloaded files and the
.I .config
configuration file. The generated toolchain is left untouched, as well as
samples which are not removed.
."
.TP
.B regtest
Calls the
.B crosstool-NG
regression test suite. All samples are build, and the regression test suite is
run against every one of them.
."
.TP
.B updatetools
Updates the
.I config.guess
and
.I config.sub
scripts. These scripts are used by
.B crosstool-NG
to canonicalise the machines' name (host, build and target machines).
.TP
.B tarball
Builds a tarball of the generated toolchain, also saving the scripts from
.B crosstool-NG
that are needed to rebuild the target, and also saving the tarballs of the
componnents that were used.
."
.SH ENVIRONMENT
.TP
.B 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
.BR liststeps .
."
.SH EXIT VALUE
The
.B ct-ng
frontend is in fact a
.BR make (1)
script. See the man page for
.BR make (1)
to have the meaning of the exit values.
."
.SH BUGS
As of today (@@CT_DATE@@), building tarballs is broken. It is difficult to
foresee how every parts of
.B 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,
.B crosstool-NG
configuration, but also all
.B crosstool-NG
scripts.
."
.SH SECURITY
.B Don't run as root!
Great care has been taken to avoid mistakes, but bug-free programs don't
exist. During normal operation,
.B crosstool-NG
removes entire directories. If you run as root, and there is a bug or you
mis-configured
.BR crosstool-NG ,
entire important directories could be removed (eg.
.IR /usr ),
although
.B crosstool-NG
will refuse to install toolchains in some well known critical directories.
."
.SH AUTHORS
.MTO "yann.morin.1998@anciens.enib.fr" "Yann E. MORIN" ""
.URL "http://ymorin.is-a-geek.org" "" ""
reordered
.B crosstool
(see section titled
.BR "SEE ALSO" )
scripts to be more easily maintainable, added the Kconfig configurator, some
patches, support for linux headers installation, and support for uClibc-based
toolchains.

Please consult the file
.I @@CT_DOCDIR@@/CREDITS
for a list of contributors.
."
.SH SEE ALSO
You can find more in-depth documentation in
.IR @@CT_DOCDIR@@/overview.txt .

Please have a look at the
.URL "http://www.kegel.com/crosstool" "original crosstool" " by Daniel KEGEL"