Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«Linux From ScratchΒ». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 8

Автор Gerard Beekmans

Если Π½Π° вашСм Π±Π°Π·ΠΎΠ²ΠΎΠΌ дистрибутивС установлСна Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° glibc вСрсии 2.2.4 ΠΈ Ρ€Π°Π½Π΅Π΅, ΠΈ Π½Π° протяТСнии Π“Π»Π°Π²Ρ‹ 5 пСрСмСнная $LC_ALL ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° Π½Π΅ ΠΊΠ°ΠΊ "C" ΠΈΠ»ΠΈ Β«POSIXΒ», ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΏΡ€ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π΅ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠΌ Π²Ρ…ΠΎΠ΄Π΅ Π² срСду chroot Π² Π“Π»Π°Π²Π΅ 6. Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ²Π΅Ρ€Π΅Π½Π½Ρ‹ΠΌ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π² срСдС chroot всС Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ, присвойтС этой ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Β«POSIXΒ» ("C" is an alias for Β«POSIXΒ»).

ИспользованиС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ $CC Π²Ρ‹Π·Π²Π°Π½ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒΡŽ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡŽ ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½Ρ‹Ρ… символов Π² статичСскиС ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ экономится дисковоС пространство ΠΈ сущСствСнно сокращаСтся врСмя компиляции.

Установка Bash-2.05a

ΠŸΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ врСмя компиляции: 1 SBU НСобходимоС дисковоС пространство: 24 MB


Установка Bash

ΠŸΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ ΠΊΠ°ΠΊ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Bash, ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ Π² вашСм Π±Π°Π·ΠΎΠ²ΠΎΠΌ дистрибутивС Π΅ΡΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ /usr/lib/libcurses.a ΠΈ usr/lib/libncurses.a. Если ваш дистрибутив – LFS system, ΠΎΠ±Π° Ρ„Π°ΠΉΠ»Π° Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π½Π° мСстС ΠΏΡ€ΠΈ условии, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π² точности слСдовали инструкциям ΠΊΠ½ΠΈΠ³ΠΈ.

Если этих Ρ„Π°ΠΉΠ»ΠΎΠ² Π½Π΅Ρ‚, слСдуСт ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ncurses, Π΅Π³ΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ ncurses-dev. Если этот ΠΏΠ°ΠΊΠ΅Ρ‚ ΡƒΠΆΠ΅ установлСн, ΠΈΠ»ΠΈ Π²Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ Π΅Π³ΠΎ установили, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ этих Π΄Π²ΡƒΡ… Ρ„Π°ΠΉΠ»ΠΎΠ² Π΅Ρ‰Π΅ Ρ€Π°Π·. Π—Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ Ρ„Π°ΠΉΠ» libcurses.a отсутствуСт. Π’ Ρ‚Π°ΠΊΠΎΠΌ случаС, создайтС ΡΠΈΠΌΠ²ΠΎΠ»ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ссылку libcurses.a, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ root:

ln -s libncurses.a /usr/lib/libcurses.a


Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ ΠΈΠ½ΡΡ‚Π°Π»Π»ΡΡ†ΠΈΡŽ Bash:

./configure –enable-static-link \ –prefix=$LFS/static –with-curses && make && make install


Если стадия make install Π²Ρ‹Π΄Π°Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ сообщСния ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ…:

install-info: unknown option `–dir-file=/mnt/lfs/usr/info/dir' usage: install-info [–version] [–help] [–debug] [–maxwidth=nnn] [–section regexp title] [–infodir=xxx] [–align=nnn] [–calign=nnn] [–quiet] [–menuentry=xxx] [–info-dir=xxx] [–keep-old] [–description=xxx] [–test] [–remove] [–] filename make[1]: *** [install] Error 1 make[1]: Leaving directory `/mnt/lfs/usr/src/bash-2.05a/doc' make: [install] Error 2 (ignored)


это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ρƒ вас Debian-2.2 (potato), Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ старая вСрсия ΠΏΠ°ΠΊΠ΅Ρ‚Π° texinfo. Данная ошибка Π½Π΅ ΠΊΡ€ΠΈΡ‚ΠΈΡ‡Π½Π°: страницы Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ Π±ΡƒΠ΄ΡƒΡ‚ Π·Π°Π½ΠΎΠ²ΠΎ установлСны Π² Π“Π»Π°Π²Π΅ 6, ΠΏΡ€ΠΈ пСрСкомпиляции bash с динамичСскими ссылками. Π’ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ Ρ€Π΅Π»ΠΈΠ·Π΅ Debian (3.0; извСстном ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Woody) эта ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° отсутствуСт.

ПояснСния команд

–enable-static-link: Π­Ρ‚Π° опция configure ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° использованиС статичСских ссылок.

–prefix=$LFS/static: Π­Ρ‚Π° опция configure инсталлируСт всС Ρ„Π°ΠΉΠ»Ρ‹ Bash Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ $LFS/static, которая Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Ρ‚ΡŒΡΡ /static послС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΌΡ‹ Π²ΠΎΠΉΠ΄Π΅ΠΌ Π² систСму LFS с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ chroot ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ.

–with-curses: Π­Ρ‚Π° опция связываСт bash с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ curses вмСсто ΡƒΡΡ‚Π°Ρ€Π΅Π²Π°ΡŽΡ‰Π΅ΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ termcap.

Π‘ΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΡΠ²ΡΠ·Ρ‹Π²Π°Ρ‚ΡŒ ΡΡ‚Π°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ bash с libncurses (ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΡΠ·Π°Ρ‚ΡŒ Π΅Π΅ с termcap, Ρ‚.ΠΊ. Π² любом случаС ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌ Bash Π² Π“Π»Π°Π²Π΅ 6 с использованиСм libncurses), ΠΎΠ΄Π½Π°ΠΊΠΎ это Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ способ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚ Ncurses установлСн ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ. Π’ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ случаС, это ΠΏΠΎΠ²Π»Π΅Ρ‡Π΅Ρ‚ Π·Π° собой сбои ΠΏΡ€ΠΈ инсталляции ΠΏΠ°ΠΊΠ΅Ρ‚Π° Texinfo, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ncurses, Ρ‚.ΠΊ. с termcap ΠΎΠ½ Π²Π΅Π΄Π΅Ρ‚ сСбя Π½Π΅ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎ.

Π‘ΠΈΠΌΠ²ΠΎΠ»Ρ‹ && Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ строки ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π° лишь Π² Ρ‚ΠΎΠΌ случаС, Ссли прСдыдущая ΠΊΠΎΠΌΠ°Π½Π΄Π° Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ΠΈΠ»Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 0 Π½Π° Π²Ρ‹Ρ…ΠΎΠ΄Π΅, Ρ‚.Π΅. ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠΈΠ»Π° ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ. Π’ Ρ‚ΠΎΠΌ случаС Ссли Π²Ρ‹ ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅Ρ‚Π΅ ΠΈ вставляСтС эти ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π² ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΡƒ, Π½Π΅ Π·Π°Π±Ρ‹Π²Π°ΠΉΡ‚Π΅ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ Ссли скрипт ./configure Π΄Π°Π» сбой, Π½Π΅ выполняСтся ΠΊΠΎΠΌΠ°Π½Π΄Π° make, Π° Ρ‚Π°ΠΊΠΆΠ΅, Ссли ΠΊΠΎΠΌΠ°Π½Π΄Π° make Π΄Π°Π»Π° сбой, Π½Π΅ выполняСтся ΠΊΠΎΠΌΠ°Π½Π΄Π° make install, ΠΈ Ρ‚.Π΄.

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅ Bash

ПослСдняя ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°: вСрсия 2.05a.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

bash, sh (ссылка Π½Π° bash) ΠΈ bashbug

Описания

bash

bash – Bourne-Again SHell, ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ Π² Unix систСмах ΠΊΠΎΠΌΠ°Π½Π΄Π½Ρ‹ΠΉ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€. Bash считываСт Π΄Π°Π½Π½Ρ‹Π΅ со стандартного Π²Π²ΠΎΠ΄Π°, с ΠΊΠ»Π°Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρ‹. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Π²ΠΎΠ΄ΠΈΡ‚ Ρ‡Ρ‚ΠΎ-Π»ΠΈΠ±ΠΎ, ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ распознаСт Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠ΅ ΠΈ выполняСт это, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ запускаСт ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ.

bashbug

bashbug – скрипт, ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‰ΠΈΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ ΡΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ сообщСния ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ… bash Π² стандартном Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅.

sh

sh – символичСская ссылка Π½Π° bash. Π‘ΡƒΠ΄ΡƒΡ‡ΠΈ Π²Ρ‹Π·Π²Π°Π½Π½Ρ‹ΠΌ ΠΊΠ°ΠΊ sh, bash ΠΈΠΌΠΈΡ‚ΠΈΡ€ΡƒΠ΅Ρ‚ запуск старых вСрсий sh для Π»ΡƒΡ‡ΡˆΠ΅Π³ΠΎ соотвСтствия стандартам POSIX.

Зависимости Bash

ПослСдняя ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°: вСрсия 2.05a.

Bash: bash, sh Binutils: ar, as, ld, ranlib, size Diffutils: cmp Fileutils: chmod, cp, install, ln, ls, mkdir, mv, rm Gcc: cc, cc1, collect2, cpp0, gcc Grep: egrep, grep Make: make Gawk: awk Sed: sed Sh-utils: basename, echo, expr, hostname, sleep, uname Texinfo: install-info Textutils: cat, tr, uniq

Установка Binutils-2.13

ΠŸΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ врСмя компиляции: 2.05 SBU НСобходимоС дисковоС пространство: 160 MB


Установка Binutils

Π­Ρ‚ΠΎΡ‚ ΠΏΠ°ΠΊΠ΅Ρ‚ извСстСн своим Π½Π΅ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Ρ‹ΠΌ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ ΠΏΡ€ΠΈ компиляции с ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹ΠΌΠΈ опциями ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ (Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΎΠΏΡ†ΠΈΠΈ -march ΠΈ -mcpu). Binutils рСкомСндуСтся ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ с настройками ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Ссли Π²Ρ‹ Π·Π°Π΄Π°Π»ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ CFLAGS ΠΈΠ»ΠΈ CXXFLAGS, ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‰ΠΈΠ΅ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, рСкомСндуСтся ΡƒΠ±Ρ€Π°Ρ‚ΡŒ ΠΈΡ… ΠΏΡ€ΠΈ сборкС ΠΏΠ°ΠΊΠ΅Ρ‚Π° binutils. ИзмСняя ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ для binutils, Π²Ρ‹ дСйствуСтС Π½Π° свой страх ΠΈ риск.

Для инсталляции Binutils Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅:

mkdir ../binutils-build && cd ../binutils-build && ../binutils-2.13/configure –prefix=$LFS/static –disable-nls && make LDFLAGS=-all-static && make install


ПояснСния команд

mkdir ../binutils-build: Π’ инструкциях установки Binutils рСкомСндуСтся ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ для сборки, вмСсто Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ исходников. Π˜Ρ‚Π°ΠΊ, ΠΌΡ‹ создаСм Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ binutils-build ΠΈ Π±ΡƒΠ΄Π΅ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΈΠ· Π½Π΅Π΅.

–disable-nls: Π­Ρ‚Π° опция Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π°Ρ†ΠΈΠΎΠ½Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ (ΠΈΠ»ΠΈ i18n), которая Π½Π΅ Π½ΡƒΠΆΠ½Π° Π½Π°ΠΌ Π½Π° стадии статичСски связанных ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, Ρ‚.ΠΊ. часто Π΄Π°Π΅Ρ‚ сбои ΠΏΡ€ΠΈ использовании статичСских ссылок.

LDFLAGS=-all-static: ΠŸΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ LDFLAGS Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ -all-static для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ статичСскиС ссылки.

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΠΌΠΎΠ΅ Binutils

ПослСдняя ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°: вСрсия 2.12.1.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

addr2line, ar, as, gasp, gprof, ld, nm, objcopy, objdump, ranlib, readelf, size, strings and strip

Описания

addr2line

addr2line ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ адрСса Π² ΠΈΠΌΠ΅Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ Π½ΠΎΠΌΠ΅Ρ€Π° строк. Given an address and an executable, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ отладочная информация исполняСмого Ρ„Π°ΠΉΠ»Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠ΅ имя Ρ„Π°ΠΉΠ»Π° ΠΈ Π½ΠΎΠΌΠ΅Ρ€ строки связаны с Π΄Π°Π½Π½Ρ‹ΠΌ адрСсом.

ar

ar создаСт ΠΈ измСняСт Π°Ρ€Ρ…ΠΈΠ²Ρ‹, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ ΠΈΡ… распаковку. Архив – Ρ„Π°ΠΉΠ», содСрТащий нСсколько Ρ„Π°ΠΉΠ»ΠΎΠ² Π² Π²ΠΈΠ΄Π΅, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅ΠΌ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π».

as

as ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для ассСмблирования Π²Ρ‹Π²ΠΎΠ΄Π° the GNU C Compiler, gcc для использования с Π»ΠΈΠ½ΠΊΠ΅Ρ€ΠΎΠΌ ld.

gasp

gasp – Assembler Macro Preprocessor.

gprof

gprof ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ статистику систСмных Π²Ρ‹Π·ΠΎΠ²ΠΎΠ².

ld

ld ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ‚ нСсколько ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½Ρ‹Ρ… ΠΈ Π°Ρ€Ρ…ΠΈΠ²Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ устанавливаСт ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹Π΅ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ. ПослСдний шаг Π² сборкС скомпилированной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ – запуск ld.

nm

nm пСрСчисляСт символы ΠΈΠ· ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ².

objcopy

objcopy utility ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅Ρ‚ содСрТимоС ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ. objcopy ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ GNU BFD для чтСния/записи ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ². Π’ΠΎΠ·ΠΌΠΎΠΆΠ½Π° запись ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅, ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎΠΌ ΠΎΡ‚ исходного.

objdump

objdump Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎΠ± ΠΎΠ΄Π½ΠΎΠΌ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»Π°Ρ…. ΠžΠΏΡ†ΠΈΠΈ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚, ΠΊΠ°ΠΊΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ. Π­Ρ‚Π° информация ΠΏΠΎΠ»Π΅Π·Π½Π° для программистов, Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ… компиляторы, Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ‚Π΅ΠΌ, ΠΊΠΎΠΌΡƒ Π½ΡƒΠΆΠ½ΠΎ просто ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ.

ranlib

ranlib Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΎΠ³Π»Π°Π²Π»Π΅Π½ΠΈΠ΅ содСрТимого Π°Ρ€Ρ…ΠΈΠ²Π° ΠΈ сохраняСт Π΅Π³ΠΎ Π² Π°Ρ€Ρ…ΠΈΠ²Π΅. Бписок Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ всС символы, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Ρ‡Π»Π΅Π½Π°ΠΌΠΈ Π°Ρ€Ρ…ΠΈΠ²Π°, that is a relocatable object file.

readelf

readelf Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎΠ± Π±ΠΈΠ½Π°Ρ€Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»Π°Ρ… Ρ‚ΠΈΠΏΠ° elf.

size

size Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ сСкций –и ΠΎΠ±Ρ‰ΠΈΠΉ размСр– ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π°. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, гСнСрируСтся ΠΎΠ΄Π½Π° строка для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° ΠΈΠ»ΠΈ модуля Π² Π°Ρ€Ρ…ΠΈΠ²Π΅.

strings

Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° strings Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹Ρ… символов Π΄Π»ΠΈΠ½ΠΎΠΉ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ 4 Π·Π½Π°ΠΊΠ° (ΠΈΠ»ΠΈ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ‹), Π·Π°Π²Π΅Ρ€ΡˆΠ°ΡŽΡ‰ΡƒΡŽΡΡ Π½Π΅ΠΏΠ΅Ρ‡Π°Ρ‚Π½Ρ‹ΠΌ символом. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, выводятся лишь строки ΠΈΠ· ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΈ Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Ρ… частСй ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ². Для Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ‚ΠΈΠΏΠΎΠ² Ρ„Π°ΠΉΠ»ΠΎΠ² выводятся строки ΠΈΠ· всСго Ρ„Π°ΠΉΠ»Π°.

strings Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для опрСдСлСния содСрТимого нСтСкстовых Ρ„Π°ΠΉΠ»ΠΎΠ².

strip

strip удаляСт всС ΠΈΠ»ΠΈ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ символы ΠΈΠ· ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ². Бписок ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π°Ρ€Ρ…ΠΈΠ²Ρ‹. Π”ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π·Π°Π΄Π°Π½ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ ΠΎΠ΄ΠΈΠ½ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ». ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π½Π΅Π΅, Ρ‡Π΅ΠΌ запись ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΊΠΎΠΏΠΈΠΉ ΠΏΠΎΠ΄ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ.

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ

libbfd.[a,so] ΠΈ libopcodes.[a,so]

Описания

libbfd

libbfd – Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Binary File Descriptor.

libopcodes

libopcodes – Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΎΠΏΠΊΠΎΠ΄Π°ΠΌΠΈ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² сборкС ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ Π²Ρ€ΠΎΠ΄Π΅ objdump. ΠžΠΏΠΊΠΎΠ΄Ρ‹ – Β«Ρ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹Π΅Β» вСрсии инструкций процСссора.

Зависимости Binutils

ПослСдняя ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°: вСрсия 2.11.2.

Autoconf: autoconf, autoheader Automake: aclocal, automake Bash: sh Binutils: ar, as, ld, nm, ranlib, strip Diffutils: cmp Fileutils: chmod, cp, ln, ls, mkdir, mv, rm, rmdir, touch Flex: flex Gcc: cc, cc1, collect2, cpp0, gcc Glibc: ldconfig Grep: egrep, fgrep, grep M4: m4 Make: make Gawk: gawk Sed: sed Sh-utils: basename, echo, expr, hostname, sleep, true, uname Texinfo: install-info, makeinfo Textutils: cat, sort, tr, uniq

Установка Bzip2-1.0.2

ΠŸΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ врСмя компиляции: 0.07 SBU НСобходимоС дисковоС пространство: 6 MB


Установка Bzip2

Для инсталляции Bzip2 Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅:

make CC="gcc -static" && make PREFIX=$LFS/static install