yann@197
|
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@197
|
8 |
.TH crosstool-NG 1 "@@CT_DATE@@" "version @@CT_VERSION@@" "User Commands"
|
yann@182
|
9 |
."
|
yann@182
|
10 |
."
|
yann@182
|
11 |
.SH NAME
|
yann@197
|
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@197
|
22 |
.B crosstool-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@197
|
38 |
.B crosstool-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@197
|
50 |
.B crosstool-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@197
|
64 |
Builds the configured toolchain.
|
yann@182
|
65 |
."
|
yann@182
|
66 |
.TP
|
yann@182
|
67 |
.B liststeps
|
yann@182
|
68 |
Lists all build steps available (see
|
yann@182
|
69 |
.BR ENVIRONMENT,
|
yann@182
|
70 |
below).
|
yann@182
|
71 |
."
|
yann@182
|
72 |
.TP
|
yann@182
|
73 |
.B clean
|
yann@182
|
74 |
Remove files generated by
|
yann@197
|
75 |
.B crosstool-NG
|
yann@182
|
76 |
for itself (these are mostly the configurators' binaries).
|
yann@182
|
77 |
."
|
yann@182
|
78 |
.TP
|
yann@182
|
79 |
.B distclean
|
yann@182
|
80 |
Same as
|
yann@182
|
81 |
.B clean
|
yann@182
|
82 |
, but also removes the toolchain build directory, the downloaded files and the
|
yann@182
|
83 |
.I .config
|
yann@182
|
84 |
configuration file. The generated toolchain is left untouched, as well as
|
yann@182
|
85 |
samples which are not removed.
|
yann@182
|
86 |
."
|
yann@182
|
87 |
.TP
|
yann@182
|
88 |
.B regtest
|
yann@182
|
89 |
Calls the
|
yann@197
|
90 |
.B crosstool-NG
|
yann@182
|
91 |
regression test suite. All samples are build, and the regression test suite is
|
yann@182
|
92 |
run against every one of them.
|
yann@182
|
93 |
."
|
yann@182
|
94 |
.TP
|
yann@182
|
95 |
.B updatetools
|
yann@182
|
96 |
Updates the
|
yann@182
|
97 |
.I config.guess
|
yann@182
|
98 |
and
|
yann@182
|
99 |
.I config.sub
|
yann@182
|
100 |
scripts. These scripts are used by
|
yann@197
|
101 |
.B crosstool-NG
|
yann@182
|
102 |
to canonicalise the machines' name (host, build and target machines).
|
yann@182
|
103 |
.TP
|
yann@182
|
104 |
.B tarball
|
yann@182
|
105 |
Builds a tarball of the generated toolchain, also saving the scripts from
|
yann@197
|
106 |
.B crosstool-NG
|
yann@182
|
107 |
that are needed to rebuild the target, and also saving the tarballs of the
|
yann@182
|
108 |
componnents that were used.
|
yann@182
|
109 |
."
|
yann@182
|
110 |
.SH ENVIRONMENT
|
yann@182
|
111 |
.TP
|
yann@182
|
112 |
.B STOP, START
|
yann@182
|
113 |
Respectively stops and restarts the build just before this step. To restart a
|
yann@182
|
114 |
step, a previous build should have run at least to that step, or further.
|
yann@182
|
115 |
|
yann@182
|
116 |
The list of steps is vailable with the action
|
yann@182
|
117 |
.BR liststeps .
|
yann@182
|
118 |
."
|
yann@182
|
119 |
.SH EXIT VALUE
|
yann@182
|
120 |
The
|
yann@182
|
121 |
.B ct-ng
|
yann@182
|
122 |
frontend is in fact a
|
yann@182
|
123 |
.BR make (1)
|
yann@182
|
124 |
script. See the man page for
|
yann@182
|
125 |
.BR make (1)
|
yann@182
|
126 |
to have the meaning of the exit values.
|
yann@182
|
127 |
."
|
yann@182
|
128 |
.SH BUGS
|
yann@182
|
129 |
As of today (@@CT_DATE@@), building tarballs is broken. It is difficult to
|
yann@182
|
130 |
foresee how every parts of
|
yann@197
|
131 |
.B crosstool-NG
|
yann@182
|
132 |
are going to be installed. Each parts is needed to build a tarball, as it
|
yann@182
|
133 |
contains all that is needed to rebuild the toolchain from scratch: toolchain
|
yann@182
|
134 |
components' sources,
|
yann@197
|
135 |
.B crosstool-NG
|
yann@182
|
136 |
configuration, but also all
|
yann@197
|
137 |
.B crosstool-NG
|
yann@182
|
138 |
scripts.
|
yann@182
|
139 |
."
|
yann@182
|
140 |
.SH SECURITY
|
yann@182
|
141 |
.B Don't run as root!
|
yann@182
|
142 |
Great care has been taken to avoid mistakes, but bug-free programs don't
|
yann@182
|
143 |
exist. During normal operation,
|
yann@197
|
144 |
.B crosstool-NG
|
yann@182
|
145 |
removes entire directories. If you run as root, and there is a bug or you
|
yann@182
|
146 |
mis-configured
|
yann@197
|
147 |
.BR crosstool-NG ,
|
yann@182
|
148 |
entire important directories could be removed (eg.
|
yann@182
|
149 |
.IR /usr ),
|
yann@182
|
150 |
although
|
yann@197
|
151 |
.B crosstool-NG
|
yann@182
|
152 |
will refuse to install in some well known critical directories.
|
yann@182
|
153 |
."
|
yann@182
|
154 |
.SH AUTHORS
|
yann@182
|
155 |
.MTO "yann.morin.1998@anciens.enib.fr" "Yann E. MORIN" ""
|
yann@182
|
156 |
.URL "http://ymorin.is-a-geek.org" "" ""
|
yann@182
|
157 |
reordered
|
yann@182
|
158 |
.B crosstool
|
yann@182
|
159 |
(see section titled
|
yann@182
|
160 |
.BR "SEE ALSO" )
|
yann@182
|
161 |
scripts to be more easily maintainable, added the Kconfig configurator, some
|
yann@182
|
162 |
patches.
|
yann@182
|
163 |
|
yann@182
|
164 |
Please consult the file
|
yann@182
|
165 |
.I @@CT_DOCDIR@@/CREDITS
|
yann@182
|
166 |
for a list of contributors.
|
yann@182
|
167 |
."
|
yann@182
|
168 |
.SH SEE ALSO
|
yann@182
|
169 |
Please have a look at the
|
yann@182
|
170 |
.URL "http://www.kegel.com/crosstool" "original crosstool" " by Daniel KEGEL"
|