| 1 |
AUTHOR: Ted Bullock <tbullock at Canada.com> |
|---|
| 2 |
|
|---|
| 3 |
DATE: 2005-10-12 |
|---|
| 4 |
|
|---|
| 5 |
LICENSE: GNU General Public License |
|---|
| 6 |
|
|---|
| 7 |
SYNOPSIS: How to build LFS for different sub-architectures. |
|---|
| 8 |
|
|---|
| 9 |
PRIMARY URI: |
|---|
| 10 |
http://www.comlore.com/i386-pc-linux-gnu |
|---|
| 11 |
|
|---|
| 12 |
DESCRIPTION: |
|---|
| 13 |
Additive instructions on how to cross-build a LFS-system for different x86 sub-architectures. |
|---|
| 14 |
|
|---|
| 15 |
PREREQUISITES: |
|---|
| 16 |
The command-replacements are applicable for LFS 6.1+SVN20051009. Similar changes will probably work |
|---|
| 17 |
fine on other versions of the book; however your mileage may vary since the resources to |
|---|
| 18 |
build a Linux system are under constant revision and replacement. You should probably have |
|---|
| 19 |
either completed a run through the book already or at least read the procedures before you |
|---|
| 20 |
start. |
|---|
| 21 |
|
|---|
| 22 |
Note: There is a nicely formatted pdf and MS *.doc file available at the webpage listed above. |
|---|
| 23 |
Please forgive my horrible web design aesthetics and meaningless babble on that webpage, |
|---|
| 24 |
but the hint is available there so go take a peek! |
|---|
| 25 |
|
|---|
| 26 |
HINT: |
|---|
| 27 |
1. CROSSCOMPILING-X86 |
|---|
| 28 |
|
|---|
| 29 |
This hint is originally written by Nicholas Dille <webmaster at rakshas.de>. |
|---|
| 30 |
Later it was updated and maintained by Daniel Baumann. |
|---|
| 31 |
Now maintenance is done by Theodore Bullock <tbullock at Canada.com> |
|---|
| 32 |
|
|---|
| 33 |
1.1. INTRODUCTION |
|---|
| 34 |
|
|---|
| 35 |
The GNU Compiler Collection (GCC) can build binaries for multiple platforms. |
|---|
| 36 |
|
|---|
| 37 |
It is not especially complicated to cross-compile between different sub-architectures, for |
|---|
| 38 |
example, to build i386 binary executables on an i686 computer. On the other hand, to cross- |
|---|
| 39 |
compile between totally different architectures, for example, building PowerPC binary |
|---|
| 40 |
executables on an i386 machine, an entirely different tool-chain is required and is beyond the |
|---|
| 41 |
scope of this hint. |
|---|
| 42 |
|
|---|
| 43 |
Ideally, all packages should get their information about the target from autoconf configuration |
|---|
| 44 |
parameters and compiler flags. Unfortunately this is not the reality. Some packages use |
|---|
| 45 |
different flags and a few packages, (notably GCC and Glibc), need other trickery to fake their |
|---|
| 46 |
auto-detection in place of flags. |
|---|
| 47 |
|
|---|
| 48 |
Additionally, if you are trying to build LFS on a very old 386 then there is an extra trick to |
|---|
| 49 |
completing the procedure. |
|---|
| 50 |
|
|---|
| 51 |
This hint does not cover building LFS onto i286 or older machines as these processors lack |
|---|
| 52 |
some critical functionality to handle modern memory management. For information on that |
|---|
| 53 |
topic search the internet for embedded Linux solutions. |
|---|
| 54 |
|
|---|
| 55 |
1.2. About $CHOST |
|---|
| 56 |
|
|---|
| 57 |
As with $LFS, we will use the variable $CHOST to specify the type of computer we are |
|---|
| 58 |
compiling on. To cross-compile you have to replace $CHOST with a value matching for your |
|---|
| 59 |
target computer. |
|---|
| 60 |
|
|---|
| 61 |
If your target machine is currently running a flavour of Linux then you can get the correct |
|---|
| 62 |
value from your target computer with |
|---|
| 63 |
|
|---|
| 64 |
# uname -m |
|---|
| 65 |
|
|---|
| 66 |
If you have not already a running Linux system on the target machine, use the corresponding |
|---|
| 67 |
value from this list instead: |
|---|
| 68 |
|
|---|
| 69 |
Intel 386: i386 |
|---|
| 70 |
Intel 486: i486 |
|---|
| 71 |
Intel Pentium 1 and MMX: i586 |
|---|
| 72 |
Intel Pentium Pro, 2, 3, 4 and M: i686 |
|---|
| 73 |
AMD K5, K6-1, K6-2 and K6-3: i586 |
|---|
| 74 |
AMD Athlon 1, 2, 3, 4 and 5: i686 |
|---|
| 75 |
IDT WinChip-C6, WinChip2: i486 |
|---|
| 76 |
VIA C3: i486 |
|---|
| 77 |
|
|---|
| 78 |
The rest of the hint assumes you have set $CHOST as an environment variable, for example |
|---|
| 79 |
|
|---|
| 80 |
# export CHOST="i386-pc-linux-gnu" |
|---|
| 81 |
|
|---|
| 82 |
1.3. About $CFLAGS and $CXXFLAGS |
|---|
| 83 |
|
|---|
| 84 |
$CFLAGS and $CXXFLAGS are environment variable that pass user flags to GCC and G++ |
|---|
| 85 |
respectively. Often, they are used to set the optimization level (-On, where n is an integer). |
|---|
| 86 |
For details about optimization, please refer to the optimization hint. Here, we force GCC to |
|---|
| 87 |
compile for the desired sub-architecture using -march. |
|---|
| 88 |
|
|---|
| 89 |
Choose from this list: |
|---|
| 90 |
|
|---|
| 91 |
Intel 386 i386 |
|---|
| 92 |
Intel 486 i486 |
|---|
| 93 |
Intel Pentium 1: pentium |
|---|
| 94 |
Intel Pentium MMX: pentium-mmx |
|---|
| 95 |
Intel Pentium Pro: pentiumpro |
|---|
| 96 |
Intel Pentium 2: pentium2 |
|---|
| 97 |
Intel Pentium 3: pentium3 |
|---|
| 98 |
Intel Pentium 4 and M: pentium4 |
|---|
| 99 |
|
|---|
| 100 |
AMD K5: pentium |
|---|
| 101 |
AMD K6-1: k6 |
|---|
| 102 |
AMD K6-2: k6-2 |
|---|
| 103 |
AMD K6-3: k6-3 |
|---|
| 104 |
AMD Athlon 1 (Classic): athlon |
|---|
| 105 |
AMD Athlon 2 (Thunderbird): athlon-tbird |
|---|
| 106 |
AMD Athlon 3 (XP): athlon-xp |
|---|
| 107 |
AMD Athlon 4 (Palomino): athlon-4 |
|---|
| 108 |
AMD Athlon 5 (MP): athlon-mp |
|---|
| 109 |
|
|---|
| 110 |
IDT WinChip-C6: winchip-c6 |
|---|
| 111 |
IDT WinChip-2: winchip2 |
|---|
| 112 |
VIA C3: c3 |
|---|
| 113 |
|
|---|
| 114 |
The rest of the hint assumes you have set $CFLAGS and $CXXFLAGS as environment |
|---|
| 115 |
variables, for example: |
|---|
| 116 |
|
|---|
| 117 |
export CFLAGS="-march=i386" |
|---|
| 118 |
export CXXFLAGS="-march=i386" |
|---|
| 119 |
|
|---|
| 120 |
1.3.1. ATTENTION REGARDING OPTIMIZATION |
|---|
| 121 |
|
|---|
| 122 |
If you use optimization, in the majority of cases the binaries can only be used on the target |
|---|
| 123 |
machine. This means, sharing self-generated binary-packages between different hosts is not |
|---|
| 124 |
possible. |
|---|
| 125 |
|
|---|
| 126 |
2. LFS-Book |
|---|
| 127 |
|
|---|
| 128 |
The following sections are ordered as a skeleton of the information in the LFS book |
|---|
| 129 |
2.1. Chapter 4: Final Preparations |
|---|
| 130 |
|
|---|
| 131 |
2.1.1. About $LFS |
|---|
| 132 |
|
|---|
| 133 |
Add: |
|---|
| 134 |
export CHOST="<value>" |
|---|
| 135 |
export CFLAGS="<value>" |
|---|
| 136 |
export CXXFLAGS="<value>" |
|---|
| 137 |
|
|---|
| 138 |
Note: Please replace <value> with the proper strings as was discussed earlier |
|---|
| 139 |
|
|---|
| 140 |
|
|---|
| 141 |
|
|---|
| 142 |
2.2. Chapter 5: Constructing a Temporary System |
|---|
| 143 |
|
|---|
| 144 |
2.2.1. Binutils-2.16.1 |
|---|
| 145 |
|
|---|
| 146 |
Change: |
|---|
| 147 |
|
|---|
| 148 |
../binutils-2.16.1/configure --prefix=/tools --disable-nls |
|---|
| 149 |
|
|---|
| 150 |
To: |
|---|
| 151 |
../binutils-2.16.1/configure --host="$CHOST" --target="$CHOST" \ |
|---|
| 152 |
--prefix=/tools --disable-nls |
|---|
| 153 |
|
|---|
| 154 |
2.2.2. GCC-4.0.2 - Pass 1 |
|---|
| 155 |
|
|---|
| 156 |
Change: |
|---|
| 157 |
../gcc-4.0.2/configure --prefix=/tools \ |
|---|
| 158 |
--libexecdir=/tools/lib --with-local-prefix=/tools \ |
|---|
| 159 |
--disable-nls --enable-shared --enable-languages=c |
|---|
| 160 |
|
|---|
| 161 |
To: |
|---|
| 162 |
../gcc-4.0.2/configure --host="$CHOST" --target="$CHOST" \ |
|---|
| 163 |
--prefix=/tools --libexecdir=/tools/lib \ |
|---|
| 164 |
--with-local-prefix=/tools --disable-nls \ |
|---|
| 165 |
--enable-shared --enable-languages=c |
|---|
| 166 |
|
|---|
| 167 |
And then, change: |
|---|
| 168 |
make bootstrap |
|---|
| 169 |
|
|---|
| 170 |
To: |
|---|
| 171 |
make BOOT_CFLAGS="$CFLAGS" bootstrap |
|---|
| 172 |
|
|---|
| 173 |
2.2.3. Linux-Libc-Headers-2.6.12.0 |
|---|
| 174 |
|
|---|
| 175 |
No changes - we are just copying the header files here. |
|---|
| 176 |
|
|---|
| 177 |
2.2.4. Glibc-2.3.5 |
|---|
| 178 |
|
|---|
| 179 |
Ok, this one is a bit trickier and what you put here can have some important ramifications |
|---|
| 180 |
later. If your target machine is a 486 or higher you should follow the (>=486) instructions |
|---|
| 181 |
otherwise you should follow the (386) instructions. The reason for this is that the basic 386 |
|---|
| 182 |
instruction set is missing one of the atomic instructions important to multi-threading with the |
|---|
| 183 |
NPTL threading system. Instead you will use the linuxthreads library which does not require |
|---|
| 184 |
this instruction. |
|---|
| 185 |
|
|---|
| 186 |
Change: |
|---|
| 187 |
|
|---|
| 188 |
../glibc-2.3.5/configure --prefix=/tools \ |
|---|
| 189 |
--disable-profile --enable-add-ons \ |
|---|
| 190 |
--enable-kernel=2.6.0 --with-binutils=/tools/bin \ |
|---|
| 191 |
--without-gd --with-headers=/tools/include \ |
|---|
| 192 |
--without-selinux |
|---|
| 193 |
|
|---|
| 194 |
(>=486)To: |
|---|
| 195 |
../glibc-2.3.5/configure --host="$CHOST" --target="$CHOST" \ |
|---|
| 196 |
--prefix=/tools --disable-profile --enable-kernel=2.6.0 \ |
|---|
| 197 |
--with-binutils=/tools/bin --without-gd \ |
|---|
| 198 |
--with-headers=/tools/include --without-selinux |
|---|
| 199 |
|
|---|
| 200 |
(386)To: |
|---|
| 201 |
../glibc-2.3.5/configure --host="$CHOST" --target="$CHOST" \ |
|---|
| 202 |
--prefix=/tools --disable-profile --enable-add-ons=linuxthreads \ |
|---|
| 203 |
--with-tls --without-__thread --enable-kernel=2.6.0 \ |
|---|
| 204 |
--with-binutils=/tools/bin --without-gd \ |
|---|
| 205 |
--with-headers=/tools/include --without-selinux |
|---|
| 206 |
|
|---|
| 207 |
Since glibc needs to be compiled with some level of optimization we need to add an |
|---|
| 208 |
optimization flag to $CFLAGS. Please change this to suit your needs. |
|---|
| 209 |
|
|---|
| 210 |
|
|---|
| 211 |
And then change: |
|---|
| 212 |
make |
|---|
| 213 |
|
|---|
| 214 |
To: |
|---|
| 215 |
make CFLAGS="$CFLAGS -O2" |
|---|
| 216 |
|
|---|
| 217 |
And then change: |
|---|
| 218 |
make install |
|---|
| 219 |
|
|---|
| 220 |
To: |
|---|
| 221 |
make CFLAGS="$CFLAGS -O2" cross-compiling=no install |
|---|
| 222 |
|
|---|
| 223 |
2.2.5. Adjusting the tool-chain |
|---|
| 224 |
|
|---|
| 225 |
No changes - we are using preconfigured code. |
|---|
| 226 |
|
|---|
| 227 |
2.2.6. Tcl-8.4.11 |
|---|
| 228 |
|
|---|
| 229 |
Change: |
|---|
| 230 |
./configure --prefix=/tools |
|---|
| 231 |
|
|---|
| 232 |
To |
|---|
| 233 |
./configure --host="$CHOST" --target="$CHOST" --prefix=/tools |
|---|
| 234 |
|
|---|
| 235 |
2.2.7. Expect-5.43.0 |
|---|
| 236 |
|
|---|
| 237 |
Change: |
|---|
| 238 |
./configure --prefix=/tools --with-tcl=/tools/lib --with-x=no \ |
|---|
| 239 |
--with-tclinclude=$TCLPATH |
|---|
| 240 |
|
|---|
| 241 |
To: |
|---|
| 242 |
./configure --host="$CHOST" --target="$CHOST" \ |
|---|
| 243 |
--prefix=/tools --with-tcl=/tools/lib --with-x=no \ |
|---|
| 244 |
--with-tclinclude=$TCLPATH |
|---|
| 245 |
|
|---|
| 246 |
2.2.8. DejaGnu-1.4.4 |
|---|
| 247 |
|
|---|
| 248 |
No need to do anything, just installing a script. |
|---|
| 249 |
|
|---|
| 250 |
2.2.9. GCC-4.0.2- Pass 2 |
|---|
| 251 |
|
|---|
| 252 |
Change: |
|---|
| 253 |
../gcc-4.0.2/configure --prefix=/tools \ |
|---|
| 254 |
--libexecdir=/tools/lib --with-local-prefix=/tools \ |
|---|
| 255 |
--enable-clocale=gnu --enable-shared \ |
|---|
| 256 |
--enable-threads=posix --enable-__cxa_atexit \ |
|---|
| 257 |
--enable-languages=c,c++ --disable-libstdcxx-pch |
|---|
| 258 |
|
|---|
| 259 |
To: |
|---|
| 260 |
../gcc-4.0.2/configure --host="$CHOST" --target="$CHOST" \ |
|---|
| 261 |
--prefix=/tools --libexecdir=/tools/lib \ |
|---|
| 262 |
--with-local-prefix=/tools --enable-clocale=gnu \ |
|---|
| 263 |
--enable-shared --enable-threads=posix \ |
|---|
| 264 |
--enable-__cxa_atexit --enable-languages=c,c++ \ |
|---|
| 265 |
--disable-libstdcxx-pch |
|---|
| 266 |
|
|---|
| 267 |
And then change: |
|---|
| 268 |
make |
|---|
| 269 |
|
|---|
| 270 |
To: |
|---|
| 271 |
make BOOT_CFLAGS="$CFLAGS" BOOT_CXXFLAGS="$CXXFLAGS" |
|---|
| 272 |
|
|---|
| 273 |
2.2.10. Binutils-2.16.1 - Pass 2 |
|---|
| 274 |
|
|---|
| 275 |
Change: |
|---|
| 276 |
../binutils-2.16.1/configure --prefix=/tools \ |
|---|
| 277 |
--enable-shared --with-lib-path=/tools/lib \ |
|---|
| 278 |
--disable-nls |
|---|
| 279 |
|
|---|
| 280 |
To: |
|---|
| 281 |
../binutils-2.16.1/configure --host="$CHOST" --target="$CHOST" \ |
|---|
| 282 |
--prefix=/tools --enable-shared --with-lib-path=/tools/lib \ |
|---|
| 283 |
--disable-nls |
|---|
| 284 |
|
|---|
| 285 |
2.2.11. Gawk-3.1.5 |
|---|
| 286 |
|
|---|
| 287 |
Change: |
|---|
| 288 |
./configure --prefix=/tools |
|---|
| 289 |
|
|---|
| 290 |
To: |
|---|
| 291 |
./configure --host="$CHOST" --target="$CHOST" --prefix=/tools |
|---|
| 292 |
|
|---|
| 293 |
2.2.12. Coreutils-5.2.1 |
|---|
| 294 |
|
|---|
| 295 |
Change: |
|---|
| 296 |
DEFAULT_POSIX2_VERSION=199209 ./configure --prefix=/tools |
|---|
| 297 |
|
|---|
| 298 |
To: |
|---|
| 299 |
DEFAULT_POSIX2_VERSION=199209 ./configure \ |
|---|
| 300 |
--host="$CHOST" --target="$CHOST" --prefix=/tools |
|---|
| 301 |
|
|---|
| 302 |
2.2.13. Bzip2-1.0.3 |
|---|
| 303 |
|
|---|
| 304 |
Add: |
|---|
| 305 |
cp Makefile Makefile.backup && |
|---|
| 306 |
sed -e 's%$(BIGFILES)%$(BIGFILES) $(OPT)%' \ |
|---|
| 307 |
Makefile.backup > Makefile && |
|---|
| 308 |
cp Makefile-libbz2_so Makefile-libbz2_so.backup && |
|---|
| 309 |
sed -e 's%$(BIGFILES)%$(BIGFILES) $(OPT)%' \ |
|---|
| 310 |
Makefile-libbz2_so.backup > Makefile-libbz2_so |
|---|
| 311 |
|
|---|
| 312 |
Change: |
|---|
| 313 |
make |
|---|
| 314 |
|
|---|
| 315 |
To: |
|---|
| 316 |
make OPT="$CFLAGS" PREFIX=/tools |
|---|
| 317 |
|
|---|
| 318 |
Change: |
|---|
| 319 |
make PREFIX=/tools install |
|---|
| 320 |
|
|---|
| 321 |
To: |
|---|
| 322 |
make OPT="$CFLAGS" PREFIX=/tools install |
|---|
| 323 |
|
|---|
| 324 |
2.2.14. Gzip-1.3.5 |
|---|
| 325 |
|
|---|
| 326 |
Change: |
|---|
| 327 |
./configure --prefix=/tools |
|---|
| 328 |
|
|---|
| 329 |
To: |
|---|
| 330 |
./configure --host="$CHOST" --target="$CHOST" --prefix=/tools |
|---|
| 331 |
|
|---|
| 332 |
2.2.15. Diffutils-2.8.1 |
|---|
| 333 |
|
|---|
| 334 |
Change: |
|---|
| 335 |
./configure --prefix=/tools |
|---|
| 336 |
|
|---|
| 337 |
To: |
|---|
| 338 |
./configure --host="$CHOST" --target="$CHOST" --prefix=/tools |
|---|
| 339 |
|
|---|
| 340 |
2.2.16. Findutils-4.2.25 |
|---|
| 341 |
|
|---|
| 342 |
Change: |
|---|
| 343 |
./configure --prefix=/tools |
|---|
| 344 |
|
|---|
| 345 |
To: |
|---|
| 346 |
./configure --host="$CHOST" --target="$CHOST" --prefix=/tools |
|---|
| 347 |
|
|---|
| 348 |
2.2.17. Make-3.80 |
|---|
| 349 |
|
|---|
| 350 |
Change: |
|---|
| 351 |
./configure --prefix=/tools |
|---|
| 352 |
|
|---|
| 353 |
To: |
|---|
| 354 |
./configure --host="$CHOST" --target="$CHOST" --prefix=/tools |
|---|
| 355 |
|
|---|
| 356 |
2.2.18. Grep-2.5.1a |
|---|
| 357 |
|
|---|
| 358 |
Change: |
|---|
| 359 |
./configure --prefix=/tools --disable-perl-regex |
|---|
| 360 |
|
|---|
| 361 |
To: |
|---|
| 362 |
./configure --host="$CHOST" --target="$CHOST" --prefix=/tools \ |
|---|
| 363 |
--disable-perl-regexp |
|---|
| 364 |
|
|---|
| 365 |
2.2.19. Sed-4.1.4 |
|---|
| 366 |
|
|---|
| 367 |
Change: |
|---|
| 368 |
./configure --prefix=/tools |
|---|
| 369 |
|
|---|
| 370 |
To: |
|---|
| 371 |
./configure --host="$CHOST" --target="$CHOST" --prefix=/tools |
|---|
| 372 |
|
|---|
| 373 |
2.2.20. Gettext-0.14.5 |
|---|
| 374 |
|
|---|
| 375 |
Change: |
|---|
| 376 |
./configure --prefix=/tools --disable-libasprintf \ |
|---|
| 377 |
--without-csharp |
|---|
| 378 |
|
|---|
| 379 |
To: |
|---|
| 380 |
./configure --host="$CHOST" --target="$CHOST" --prefix=/tools \ |
|---|
| 381 |
--disable-libasprintf --without-csharp |
|---|
| 382 |
|
|---|
| 383 |
2.2.21. Ncurses-5.4 |
|---|
| 384 |
|
|---|
| 385 |
Change: |
|---|
| 386 |
./configure --prefix=/tools --with-shared \ |
|---|
| 387 |
--without-debug --without-ada --enable-overwrite |
|---|
| 388 |
|
|---|
| 389 |
To: |
|---|
| 390 |
./configure --host="$CHOST" --target="$CHOST" \ |
|---|
| 391 |
--prefix=/tools --with-shared \ |
|---|
| 392 |
--without-debug --without-ada --enable-overwrite |
|---|
| 393 |
|
|---|
| 394 |
2.2.22. Patch-2.5.4 |
|---|
| 395 |
|
|---|
| 396 |
Change: |
|---|
| 397 |
CPPFLAGS=-D_GNU_SOURCE ./configure --prefix=/tools |
|---|
| 398 |
|
|---|
| 399 |
To: |
|---|
| 400 |
CPPFLAGS=-D_GNU_SOURCE ./configure \ |
|---|
| 401 |
--host="$CHOST" --target="$CHOST" --prefix=/tools |
|---|
| 402 |
|
|---|
| 403 |
2.2.23. Tar-1.15.1 |
|---|
| 404 |
|
|---|
| 405 |
Change: |
|---|
| 406 |
./configure --prefix=/tools |
|---|
| 407 |
|
|---|
| 408 |
To: |
|---|
| 409 |
./configure --host="$CHOST" --target="$CHOST" --prefix=/tools |
|---|
| 410 |
|
|---|
| 411 |
2.2.24. Texinfo-4.8 |
|---|
| 412 |
|
|---|
| 413 |
Change: |
|---|
| 414 |
./configure --prefix=/tools |
|---|
| 415 |
|
|---|
| 416 |
To: |
|---|
| 417 |
./configure --host="$CHOST" --target="$CHOST" --prefix=/tools |
|---|
| 418 |
|
|---|
| 419 |
2.2.25. Bash-3.0 |
|---|
| 420 |
|
|---|
| 421 |
Change: |
|---|
| 422 |
./configure --prefix=/tools --without-bash-malloc |
|---|
| 423 |
|
|---|
| 424 |
To: |
|---|
| 425 |
./configure --host="$CHOST" --target="$CHOST" --prefix=/tools \ |
|---|
| 426 |
--without-bash-malloc |
|---|
| 427 |
|
|---|
| 428 |
2.2.26. M4-1.4.3 |
|---|
| 429 |
|
|---|
| 430 |
Change: |
|---|
| 431 |
./configure --prefix=/tools |
|---|
| 432 |
|
|---|
| 433 |
To: |
|---|
| 434 |
./configure --host="$CHOST" --target="$CHOST" --prefix=/tools |
|---|
| 435 |
|
|---|
| 436 |
2.2.27. Util-linux-2.12r |
|---|
| 437 |
|
|---|
| 438 |
Change: |
|---|
| 439 |
./configure |
|---|
| 440 |
|
|---|
| 441 |
To: |
|---|
| 442 |
./configure --host="$CHOST" --target="$CHOST" |
|---|
| 443 |
|
|---|
| 444 |
2.2.28. Perl-5.8.7 |
|---|
| 445 |
|
|---|
| 446 |
Change: |
|---|
| 447 |
./configure.gnu --prefix=/tools -Dstatic_ext='IO Fcntl POSIX' |
|---|
| 448 |
|
|---|
| 449 |
To: |
|---|
| 450 |
./configure.gnu \ |
|---|
| 451 |
-Dhost="$CHOST" -Dtarget="$CHOST" -Darchname="$CHOST" \ |
|---|
| 452 |
--prefix=/tools -Dstatic_ext='IO Fcntl POSIX' |
|---|
| 453 |
|
|---|
| 454 |
|
|---|
| 455 |
2.3. Chapter 6: Installing Basic System Software |
|---|
| 456 |
|
|---|
| 457 |
2.3.1. Entering the chroot environment |
|---|
| 458 |
|
|---|
| 459 |
After: |
|---|
| 460 |
chroot "$LFS" /tools/bin/env -i \ |
|---|
| 461 |
HOME=/root TERM="$TERM" PS1='\u:\w\$ ' \ |
|---|
| 462 |
PATH=/bin:/usr/bin:/sbin:/usr/sbin:/tools/bin \ |
|---|
| 463 |
/tools/bin/bash --login +h |
|---|
| 464 |
|
|---|
| 465 |
Add: |
|---|
| 466 |
export CHOST="i386-pc-linux-gnu" && |
|---|
| 467 |
export CFLAGS="-march=i386" && |
|---|
| 468 |
export CXXFLAGS="-march=i386" |
|---|
| 469 |
|
|---|
| 470 |
Note: Please replace i386 with the proper strings according to the introduction. |
|---|
| 471 |
|
|---|
| 472 |
2.3.2. Linux-Libc-Headers-2.6.12.0 |
|---|
| 473 |
|
|---|
| 474 |
No changes - we are just copying the header files here. |
|---|
| 475 |
|
|---|
| 476 |
2.3.3. Man-pages-2.08 |
|---|
| 477 |
|
|---|
| 478 |
No changes - we are just copying the man-pages here. |
|---|
| 479 |
|
|---|
| 480 |
2.3.4. Glibc-2.3.5 |
|---|
| 481 |
|
|---|
| 482 |
Ok, this one is a bit trickier and what you put here can have some important ramifications |
|---|
| 483 |
later. If your target machine is a 486 or higher you should follow the (>=486) instructions |
|---|
| 484 |
otherwise you should follow the (386) instructions. The reason for this is that the basic 386 |
|---|
| 485 |
instruction set is missing one of the atomic instructions important to multi-threading with the |
|---|
| 486 |
NPTL threading system. Instead you will use the linuxthreads library which does not require |
|---|
| 487 |
this instruction. |
|---|
| 488 |
|
|---|
| 489 |
Change: |
|---|
| 490 |
|
|---|
| 491 |
../glibc-2.3.5/configure --prefix=/usr \ |
|---|
| 492 |
--disable-profile --enable-add-ons \ |
|---|
| 493 |
--enable-kernel=2.6.0 --libexecdir=/usr/lib/glibc |
|---|
| 494 |
|
|---|
| 495 |
(>=486)To: |
|---|
| 496 |
../glibc-2.3.5/configure --host="$CHOST" --target="$CHOST" \ |
|---|
| 497 |
--prefix=/usr --disable-profile --enable-add-ons=nptl \ |
|---|
| 498 |
--with-tls --with-__thread --enable-kernel=2.6.0 \ |
|---|
| 499 |
--libexecdir=/usr/lib/glibc |
|---|
| 500 |
|
|---|
| 501 |
(386)To: |
|---|
| 502 |
../glibc-2.3.5/configure --host="$CHOST" --target="$CHOST" \ |
|---|
| 503 |
--prefix=/usr --disable-profile --enable-add-ons=linuxthreads \ |
|---|
| 504 |
--with-tls --without-__thread --enable-kernel=2.6.0 \ |
|---|
| 505 |
--libexecdir=/usr/lib/glibc |
|---|
| 506 |
|
|---|
| 507 |
Since glibc needs to be compiled with optimization, we have to modify our $CFLAGS |
|---|
| 508 |
environment variable. Change this to suite your own needs. |
|---|
| 509 |
|
|---|
| 510 |
And then change: |
|---|
| 511 |
make |
|---|
| 512 |
|
|---|
| 513 |
To: |
|---|
| 514 |
make CFLAGS="$CFLAGS -O2" |
|---|
| 515 |
|
|---|
| 516 |
And then change: |
|---|
| 517 |
make install |
|---|
| 518 |
|
|---|
| 519 |
To: |
|---|
| 520 |
make CFLAGS="$CFLAGS -O2" cross-compiling=no install |
|---|
| 521 |
|
|---|
| 522 |
Note: This does not affect cross compiling for sub-architectures (it prevents Glibc to look for a |
|---|
| 523 |
cross compiler and uses the native one). |
|---|
| 524 |
|
|---|
| 525 |
2.3.5. Re-adjusting the toolchain |
|---|
| 526 |
|
|---|
| 527 |
No changes - we are using preconfigured code. |
|---|
| 528 |
|
|---|
| 529 |
2.3.6. Binutils-2.16.1 |
|---|
| 530 |
|
|---|
| 531 |
Change: |
|---|
| 532 |
|
|---|
| 533 |
../binutils-2.16.1/configure --prefix=/usr --enable-shared |
|---|
| 534 |
|
|---|
| 535 |
To: |
|---|
| 536 |
../binutils-2.16.1/configure --host="$CHOST" --target="$CHOST" \ |
|---|
| 537 |
--prefix=/usr --enable-shared |
|---|
| 538 |
|
|---|
| 539 |
2.3.7. GCC-4.0.2 |
|---|
| 540 |
|
|---|
| 541 |
Change: |
|---|
| 542 |
../gcc-4.0.2/configure --prefix=/usr \ |
|---|
| 543 |
--libexecdir=/usr/lib --enable-shared \ |
|---|
| 544 |
--enable-threads=posix --enable-__cxa_atexit \ |
|---|
| 545 |
--enable-clocale=gnu --enable-languages=c,c++ |
|---|
| 546 |
|
|---|
| 547 |
To: |
|---|
| 548 |
../gcc-4.0.2/configure --host="$CHOST" --target="$CHOST" \ |
|---|
| 549 |
--prefix=/usr \ |
|---|
| 550 |
--libexecdir=/usr/lib --enable-shared \ |
|---|
| 551 |
--enable-threads=posix --enable-__cxa_atexit \ |
|---|
| 552 |
--enable-clocale=gnu --enable-languages=c,c++ |
|---|
| 553 |
|
|---|
| 554 |
And change: |
|---|
| 555 |
make |
|---|
| 556 |
|
|---|
| 557 |
To: |
|---|
| 558 |
make BOOT_CFLAGS="$CFLAGS" BOOT_CXXFLAGS="$CXXFLAGS" |
|---|
| 559 |
|
|---|
| 560 |
2.3.8. Coreutils-5.2.1 |
|---|
| 561 |
|
|---|
| 562 |
Change: |
|---|
| 563 |
DEFAULT_POSIX2_VERSION=199209 ./configure --prefix=/usr |
|---|
| 564 |
|
|---|
| 565 |
To: |
|---|
| 566 |
DEFAULT_POSIX2_VERSION=199209 ./configure \ |
|---|
| 567 |
--host="$CHOST" --target="$CHOST" --prefix=/usr |
|---|
| 568 |
|
|---|
| 569 |
2.3.9. Zlib-1.2.3 |
|---|
| 570 |
|
|---|
| 571 |
No need to change anything! |
|---|
| 572 |
2.3.10. Mktemp-1.5 |
|---|
| 573 |
|
|---|
| 574 |
Change: |
|---|
| 575 |
./configure --prefix=/usr --with-libc |
|---|
| 576 |
|
|---|
| 577 |
To: |
|---|
| 578 |
./configure --host="$CHOST" --target="$CHOST" \ |
|---|
| 579 |
--prefix=/usr --with-libc |
|---|
| 580 |
|
|---|
| 581 |
2.3.11. Iana-Etc-2.00 |
|---|
| 582 |
|
|---|
| 583 |
No changes - we are just copying files. |
|---|
| 584 |
|
|---|
| 585 |
2.3.12. Findutils-4.2.25 |
|---|
| 586 |
|
|---|
| 587 |
Change: |
|---|
| 588 |
./configure --prefix=/usr --libexecdir=/usr/lib/locate \ |
|---|
| 589 |
--localstatedir=/var/lib/locate |
|---|
| 590 |
|
|---|
| 591 |
To: |
|---|
| 592 |
./configure --host="$CHOST" --target="$CHOST" \ |
|---|
| 593 |
--prefix=/usr --libexecdir=/usr/lib/locate \ |
|---|
| 594 |
--localstatedir=/var/lib/locate |
|---|
| 595 |
|
|---|
| 596 |
2.3.13. Gawk-3.1.5 |
|---|
| 597 |
|
|---|
| 598 |
Change: |
|---|
| 599 |
./configure --prefix=/usr --libexecdir=/usr/lib |
|---|
| 600 |
|
|---|
| 601 |
To: |
|---|
| 602 |
./configure --host="$CHOST" --target="$CHOST" \ |
|---|
| 603 |
--prefix=/usr --libexecdir=/usr/lib |
|---|
| 604 |
|
|---|
| 605 |
2.3.14. Ncurses-5.4 |
|---|
| 606 |
|
|---|
| 607 |
Change: |
|---|
| 608 |
./configure --prefix=/usr --with-shared --without-debug |
|---|
| 609 |
|
|---|
| 610 |
To: |
|---|
| 611 |
./configure --host="$CHOST" --target="$CHOST" \ |
|---|
| 612 |
--prefix=/usr --with-shared --without-debug |
|---|
| 613 |
|
|---|
| 614 |
2.3.15. Readline-5.0 |
|---|
| 615 |
|
|---|
| 616 |
Change: |
|---|
| 617 |
./configure --prefix=/usr --libdir=/lib |
|---|
| 618 |
|
|---|
| 619 |
To: |
|---|
| 620 |
./configure --prefix=/usr --libdir=/lib --host="$CHOST" --target="$CHOST" |
|---|
| 621 |
|
|---|
| 622 |
2.3.16. Vim-6.3 |
|---|
| 623 |
|
|---|
| 624 |
Change: |
|---|
| 625 |
./configure --prefix=/usr --enable-multibyte |
|---|
| 626 |
|
|---|
| 627 |
|
|---|
| 628 |
To: |
|---|
| 629 |
./configure --host="$CHOST" --target="$CHOST" \ |
|---|
| 630 |
--enable-multibyte --prefix=/usr |
|---|
| 631 |
|
|---|
| 632 |
2.3.17. M4-1.4.3 |
|---|
| 633 |
|
|---|
| 634 |
Change: |
|---|
| 635 |
./configure --prefix=/usr |
|---|
| 636 |
|
|---|
| 637 |
To: |
|---|
| 638 |
./configure --host="$CHOST" --target="$CHOST" --prefix=/usr |
|---|
| 639 |
|
|---|
| 640 |
2.3.18. Bison-2.1 |
|---|
| 641 |
|
|---|
| 642 |
Change: |
|---|
| 643 |
./configure --prefix=/usr |
|---|
| 644 |
|
|---|
| 645 |
To: |
|---|
| 646 |
./configure --host="$CHOST" --target="$CHOST" --prefix=/usr |
|---|
| 647 |
|
|---|
| 648 |
2.3.19. Less-382 |
|---|
| 649 |
|
|---|
| 650 |
Change: |
|---|
| 651 |
./configure --prefix=/usr --bindir=/bin --sysconfdir=/etc |
|---|
| 652 |
|
|---|
| 653 |
To: |
|---|
| 654 |
./configure --host="$CHOST" --target="$CHOST" \ |
|---|
| 655 |
--prefix=/usr --bindir=/bin --sysconfdir=/etc |
|---|
| 656 |
|
|---|
| 657 |
2.3.20. Groff-1.19.2 |
|---|
| 658 |
|
|---|
| 659 |
Change: |
|---|
| 660 |
PAGE=letter ./configure --prefix=/usr |
|---|
| 661 |
|
|---|
| 662 |
To: |
|---|
| 663 |
PAGE=letter ./configure --host="$CHOST" --target="$CHOST" \ |
|---|
| 664 |
--prefix=/usr |
|---|
| 665 |
|
|---|
| 666 |
2.3.21. Sed-4.1.4 |
|---|
| 667 |
|
|---|
| 668 |
Change: |
|---|
| 669 |
./configure --prefix=/usr --bindir=/bin |
|---|
| 670 |
|
|---|
| 671 |
To: |
|---|
| 672 |
./configure --host="$CHOST" --target="$CHOST" \ |
|---|
| 673 |
--prefix=/usr --bindir=/bin |
|---|
| 674 |
|
|---|
| 675 |
2.3.22. Flex-2.5.31 |
|---|
| 676 |
|
|---|
| 677 |
Change: |
|---|
| 678 |
./configure --prefix=/usr |
|---|
| 679 |
|
|---|
| 680 |
To: |
|---|
| 681 |
./configure --host="$CHOST" --target="$CHOST" --prefix=/usr |
|---|
| 682 |
|
|---|
| 683 |
2.3.23. Gettext-0.14.5 |
|---|
| 684 |
|
|---|
| 685 |
Change: |
|---|
| 686 |
./configure --prefix=/usr |
|---|
| 687 |
|
|---|
| 688 |
To: |
|---|
| 689 |
./configure --host="$CHOST" --target="$CHOST" --prefix=/usr |
|---|
| 690 |
|
|---|
| 691 |
2.3.24. Inetutils-1.4.2 |
|---|
| 692 |
|
|---|
| 693 |
Assuming CFLAGS are set, don?t change anything. |
|---|
| 694 |
2.3.25. IPRoute2-051007 |
|---|
| 695 |
|
|---|
| 696 |
After: |
|---|
| 697 |
./configure |
|---|
| 698 |
|
|---|
| 699 |
Add: |
|---|
| 700 |
mv Makefile Makefile.backup && |
|---|
| 701 |
sed 's/$(CCOPTS)/$(CCOPTS) $(OPT)/' Makefile.backup > Makefile |
|---|
| 702 |
|
|---|
| 703 |
Change: |
|---|
| 704 |
make SBINDIR=/sbin |
|---|
| 705 |
|
|---|
| 706 |
To: |
|---|
| 707 |
make SBINDIR=/sbin OPT="$CFLAGS" |
|---|
| 708 |
|
|---|
| 709 |
2.3.26. Perl-5.8.7 |
|---|
| 710 |
|
|---|
| 711 |
Change: |
|---|
| 712 |
./configure.gnu --prefix=/usr -Dpager="/bin/less -isR" |
|---|
| 713 |
|
|---|
| 714 |
To: |
|---|
| 715 |
./configure.gnu --prefix=/usr -Dpager="/bin/less -isR" \ |
|---|
| 716 |
-Dhost="$CHOST" -Dtarget="$CHOST" -Darchname="$CHOST" |
|---|
| 717 |
|
|---|
| 718 |
2.3.27. Texinfo-4.8 |
|---|
| 719 |
|
|---|
| 720 |
Change: |
|---|
| 721 |
./configure --prefix=/usr |
|---|
| 722 |
|
|---|
| 723 |
To: |
|---|
| 724 |
./configure --host="$CHOST" --target="$CHOST" --prefix=/usr |
|---|
| 725 |
|
|---|
| 726 |
2.3.28. Autoconf-2.59 |
|---|
| 727 |
|
|---|
| 728 |
Uses Perl and M4 to do stuff so no need to do anything! |
|---|
| 729 |
2.3.29. Automake-1.9.6 |
|---|
| 730 |
|
|---|
| 731 |
Uses Perl and M4 to do stuff so no need to do anything! |
|---|
| 732 |
2.3.30. Bash-3.0 |
|---|
| 733 |
|
|---|
| 734 |
Change: |
|---|
| 735 |
./configure --prefix=/usr --bindir=/bin |
|---|
| 736 |
|
|---|
| 737 |
To: |
|---|
| 738 |
./configure --host="$CHOST" --target="$CHOST" \ |
|---|
| 739 |
--prefix=/usr --bindir=/bin --with-bash-malloc --with-installed-readline |
|---|
| 740 |
|
|---|
| 741 |
2.3.31. File-4.15 |
|---|
| 742 |
|
|---|
| 743 |
Change: |
|---|
| 744 |
./configure --prefix=/usr |
|---|
| 745 |
|
|---|
| 746 |
To: |
|---|
| 747 |
./configure --host="$CHOST" --target="$CHOST" --prefix=/usr |
|---|
| 748 |
|
|---|
| 749 |
2.3.32. Libtool-1.5.20 |
|---|
| 750 |
|
|---|
| 751 |
Change: |
|---|
| 752 |
./configure --prefix=/usr |
|---|
| 753 |
|
|---|
| 754 |
To: |
|---|
| 755 |
./configure --host="$CHOST" --target="$CHOST" --prefix=/usr |
|---|
| 756 |
|
|---|
| 757 |
2.3.33. Bzip2-1.0.3 |
|---|
| 758 |
|
|---|
| 759 |
Add: |
|---|
| 760 |
cp Makefile Makefile.backup |
|---|
| 761 |
sed -e 's%$(BIGFILES)%$(BIGFILES) $(OPT)%' \ |
|---|
| 762 |
Makefile.backup > Makefile |
|---|
| 763 |
cp Makefile-libbz2_so Makefile-libbz2_so.backup |
|---|
| 764 |
sed -e 's%CFLAGS=-fpic%CFLAGS=$(OPT) -fpic%' \ |
|---|
| 765 |
Makefile-libbz2_so.backup > Makefile-libbz2_so |
|---|
| 766 |
|
|---|
| 767 |
Change: |
|---|
| 768 |
make -f Makefile-libbz2_so |
|---|
| 769 |
|
|---|
| 770 |
To: |
|---|
| 771 |
make OPT="$CFLAGS" -f Makefile-libbz2_so |
|---|
| 772 |
|
|---|
| 773 |
Change: |
|---|
| 774 |
make |
|---|
| 775 |
|
|---|
| 776 |
To: |
|---|
| 777 |
make OPT="$CFLAGS" |
|---|
| 778 |
|
|---|
| 779 |
2.3.34. Diffutils-2.8.1 |
|---|
| 780 |
|
|---|
| 781 |
Change: |
|---|
| 782 |
./configure --prefix=/usr |
|---|
| 783 |
|
|---|
| 784 |
To: |
|---|
| 785 |
./configure --host="$CHOST" --target="$CHOST" --prefix=/usr |
|---|
| 786 |
|
|---|
| 787 |
2.3.35. Kbd-1.12 |
|---|
| 788 |
|
|---|
| 789 |
Change: |
|---|
| 790 |
make |
|---|
| 791 |
|
|---|
| 792 |
To: |
|---|
| 793 |
make CFLAGS="$CFLAGS" |
|---|
| 794 |
|
|---|
| 795 |
2.3.36. E2fsprogs-1.38 |
|---|
| 796 |
|
|---|
| 797 |
Change: |
|---|
| 798 |
../e2fsprogs-1.35/configure --prefix=/usr --with-root-prefix="" \ |
|---|
| 799 |
--enable-elf-shlibs --disable-evms |
|---|
| 800 |
|
|---|
| 801 |
To: |
|---|
| 802 |
../e2fsprogs-1.35/configure --host="$CHOST" --target="$CHOST" \ |
|---|
| 803 |
--prefix=/usr --with-root-prefix="" \ |
|---|
| 804 |
--enable-elf-shlibs --disable-evms |
|---|
| 805 |
|
|---|
| 806 |
2.3.37. Grep-2.5.1a |
|---|
| 807 |
|
|---|
| 808 |
Change: |
|---|
| 809 |
./configure --prefix=/usr --bindir=/bin \ |
|---|
| 810 |
--with-included-regex |
|---|
| 811 |
|
|---|
| 812 |
To: |
|---|
| 813 |
./configure --host="$CHOST" --target="$CHOST" \ |
|---|
| 814 |
--prefix=/usr --bindir=/bin |
|---|
| 815 |
2.3.38. Grub-0.97 |
|---|
| 816 |
|
|---|
| 817 |
Change: |
|---|
| 818 |
./configure --prefix=/usr |
|---|
| 819 |
|
|---|
| 820 |
To: |
|---|
| 821 |
./configure --host="$CHOST" --target="$CHOST" --prefix=/usr |
|---|
| 822 |
|
|---|
| 823 |
2.3.39. Gzip-1.3.5 |
|---|
| 824 |
|
|---|
| 825 |
Change: |
|---|
| 826 |
./configure --prefix=/usr |
|---|
| 827 |
|
|---|
| 828 |
To: |
|---|
| 829 |
./configure --host="$CHOST" --target=$CHOST --prefix=/usr |
|---|
| 830 |
|
|---|
| 831 |
2.3.40. Man-1.6b |
|---|
| 832 |
|
|---|
| 833 |
Add: |
|---|
| 834 |
cp man2html/Makefile.in man2html/Makefile.in.backup |
|---|
| 835 |
sed -e "s/CFLAGS = /CFLAGS = $CFLAGS /" \ |
|---|
| 836 |
man2html/Makefile.in.backup > man2html/Makefile.in |
|---|
| 837 |
|
|---|
| 838 |
2.3.41. Make-3.80 |
|---|
| 839 |
|
|---|
| 840 |
Change: |
|---|
| 841 |
./configure --prefix=/usr |
|---|
| 842 |
|
|---|
| 843 |
To: |
|---|
| 844 |
./configure --host="$CHOST" --target="$CHOST" --prefix=/usr |
|---|
| 845 |
|
|---|
| 846 |
2.3.42. Module-Init-Tools-3.1 |
|---|
| 847 |
|
|---|
| 848 |
Change: |
|---|
| 849 |
./configure --prefix="" --enable-zlib |
|---|
| 850 |
|
|---|
| 851 |
To: |
|---|
| 852 |
./configure --prefix="" --enable-zlib --host="$CHOST" --target="$CHOST" |
|---|
| 853 |
|
|---|
| 854 |
2.3.43. Patch-2.5.4 |
|---|
| 855 |
|
|---|
| 856 |
Change: |
|---|
| 857 |
CPPFLAGS=-D_GNU_SOURCE ./configure --prefix=/usr |
|---|
| 858 |
|
|---|
| 859 |
To: |
|---|
| 860 |
CPPFLAGS=-D_GNU_SOURCE ./configure \ |
|---|
| 861 |
--host="$CHOST" --target="$CHOST" --prefix=/usr |
|---|
| 862 |
|
|---|
| 863 |
2.3.44. Procps-3.2.5 |
|---|
| 864 |
|
|---|
| 865 |
Change: |
|---|
| 866 |
make |
|---|
| 867 |
|
|---|
| 868 |
To: |
|---|
| 869 |
make CFLAGS="$CFLAGS" |
|---|
| 870 |
|
|---|
| 871 |
Note: The build process will fail if your $CFLAGS does not contain the -On switch. If that is |
|---|
| 872 |
the case, please use the line |
|---|
| 873 |
|
|---|
| 874 |
make CFLAGS="$CFLAGS -O2" |
|---|
| 875 |
|
|---|
| 876 |
instead. |
|---|
| 877 |
|
|---|
| 878 |
2.3.45. Psmisc-21.6 |
|---|
| 879 |
|
|---|
| 880 |
Change: |
|---|
| 881 |
./configure --prefix=/usr --exec-prefix=/ |
|---|
| 882 |
|
|---|
| 883 |
To: |
|---|
| 884 |
./configure --host="$CHOST" --target="$CHOST" \ |
|---|
| 885 |
--prefix=/usr --exec-prefix="" |
|---|
| 886 |
|
|---|
| 887 |
2.3.46. Shadow-4.0.12 |
|---|
| 888 |
|
|---|
| 889 |
Change: |
|---|
| 890 |
./configure --libdir=/usr/lib --enable-shared |
|---|
| 891 |
|
|---|
| 892 |
To: |
|---|
| 893 |
./configure --host="$CHOST" --target="$CHOST" \ |
|---|
| 894 |
--libdir=/usr/lib --enable-shared |
|---|
| 895 |
|
|---|
| 896 |
2.3.47. Sysklogd-1.4.1 |
|---|
| 897 |
|
|---|
| 898 |
Change: |
|---|
| 899 |
make |
|---|
| 900 |
|
|---|
| 901 |
To: |
|---|
| 902 |
make RPM_OPT_FLAGS="$CFLAGS" |
|---|
| 903 |
|
|---|
| 904 |
2.3.48. Sysvinit-2.86 |
|---|
| 905 |
|
|---|
| 906 |
Change: |
|---|
| 907 |
make -C src |
|---|
| 908 |
|
|---|
| 909 |
To: |
|---|
| 910 |
make CFLAGS="-Wall -D_GNU_SOURCE $CFLAGS" -C src |
|---|
| 911 |
|
|---|
| 912 |
2.3.49. Tar-1.15.1 |
|---|
| 913 |
|
|---|
| 914 |
Change: |
|---|
| 915 |
./configure --prefix=/usr --bindir=/bin --libexecdir=/usr/sbin |
|---|
| 916 |
|
|---|
| 917 |
To: |
|---|
| 918 |
./configure --host="$CHOST" --target="$CHOST" \ |
|---|
| 919 |
--prefix=/usr --bindir=/bin --libexecdir=/usr/sbin |
|---|
| 920 |
|
|---|
| 921 |
2.3.50. Udev-070 |
|---|
| 922 |
|
|---|
| 923 |
No changes should be necessary assuming that the CFLAGS is set appropriately as discussed |
|---|
| 924 |
in Section 1.3 About $CFLAGS and $CXXFLAGS |
|---|
| 925 |
|
|---|
| 926 |
2.3.51. Util-linux-2.12r |
|---|
| 927 |
|
|---|
| 928 |
Change: |
|---|
| 929 |
./configure |
|---|
| 930 |
|
|---|
| 931 |
To: |
|---|
| 932 |
./configure --host="$CHOST" --target="$CHOST" |
|---|
| 933 |
|
|---|
| 934 |
2.4. Chapter 7: Setting up System Bootscripts |
|---|
| 935 |
|
|---|
| 936 |
2.4.1. LFS-Bootscripts-3.2.1 |
|---|
| 937 |
|
|---|
| 938 |
No changes - we are just copying the scripts here. |
|---|
| 939 |
|
|---|
| 940 |
2.5. Chapter 8: Making the LFS system bootable |
|---|
| 941 |
|
|---|
| 942 |
2.5.1. Linux-2.6.13.1 |
|---|
| 943 |
|
|---|
| 944 |
Select your processor under 'Processor family' in the 'Processor type and features' menu. |
|---|
| 945 |
|
|---|
| 946 |
|
|---|
| 947 |
2.6. The End |
|---|
| 948 |
|
|---|
| 949 |
It may be a good idea to keep the compiler flags for future use |
|---|
| 950 |
|
|---|
| 951 |
echo "export CFLAGS=\"$(echo $CFLAGS)\"" >> /etc/profile |
|---|
| 952 |
echo "export CXXFLAGS=\"$(echo $CXXFLAGS)\"" >> /etc/profile |
|---|
| 953 |
|
|---|
| 954 |
3. ACKNOWLEDGEMENTS: |
|---|
| 955 |
* Daniel Baumann <daniel.baumann at panthera-systems.net> for updating and |
|---|
| 956 |
maintaining the hint to LFS 5.1.1 |
|---|
| 957 |
* Nicholas Dille <webmaster at rakshas.de> for the original hint |
|---|
| 958 |
* Tommy Wareing for the uname hack |
|---|
| 959 |
* Christophe Devine <devine at cr0.net> for the uname kernel-module |
|---|
| 960 |
* Yann Guidon <whygee at f-cpu.org> for extending the uname kernel-module |
|---|
| 961 |
|
|---|
| 962 |
|
|---|
| 963 |
|
|---|
| 964 |
CHANGELOG: |
|---|
| 965 |
|
|---|
| 966 |
[2005-10-12] |
|---|
| 967 |
* Updated hint to SVN-20051009 (LFS-6.1+) |
|---|
| 968 |
* Fixed multiple typographic errors |
|---|
| 969 |
[2005-09-12] |
|---|
| 970 |
* Fixed typographic mistakes |
|---|
| 971 |
[2005-06-22] |
|---|
| 972 |
* Updated to LFS-6.0 |
|---|
| 973 |
* Added 386 specific commands to glibc |
|---|
| 974 |
* Fixed typographic mistakes and extended some explanation |
|---|
| 975 |
[2004-07-10] |
|---|
| 976 |
* Updated to LFS-5.1.1 |
|---|
| 977 |
* Glibc-command revised (Thanks to Kevin White <kwhite at kevbo.org> |
|---|
| 978 |
* Typographic mistakes corrected |
|---|
| 979 |
[2004-05-29] |
|---|
| 980 |
* Typographic mistakes corrected |
|---|
| 981 |
[2004-05-22] |
|---|
| 982 |
* Updated to LFS 5.1. |
|---|
| 983 |
* Minor text changes. |
|---|
| 984 |
[2004-01-26] |
|---|
| 985 |
* Updated to LFS 5.0. |
|---|
| 986 |
* New hint format. |
|---|
| 987 |
* Major text changes. |
|---|
| 988 |
[2003-07-23] |
|---|
| 989 |
* Initial revision. |
|---|