Наши партнеры








Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

На главную -> MyLDP -> Электронные книги по ОС Linux
Linux From Scratch (version 6.8)
Назад Глава 5. Создание временной версии системы Вперед

5.4. Пакет Binutils-2.21 — Первый проход

В пакете Binutils находится компоновщик, ассемблер и другие инструменты для работы с объектными файлами.

Приблизительное время сборки: 1 SBU

Требуемое дисковое пространство: 248 MB

5.4.1. Кросс установка пакета Binutils

Замечание

Вернитесь назад и перечитайте замечания, приведенные в предыдущем разделе. Если вам станут понятны замечания, отмеченные как важные, то это убережет вас в будущем от массы проблем.

Важно, чтобы пакет Binutils был первым откомпилированным пакетом, поскольку в Glibc и в GCC для имеющегося компоновщика и ассемблера выполняются различные проверки, которые определяют, какие у них включены возможности.

В документации по Binutils рекомендуется собирать пакет Binutils в отдельном директории, предназначенном для сборки, а не в директории с исходными кодами:

mkdir -v ../binutils-build
cd ../binutils-build

Замечание

Чтобы можно было пользоваться значениями SBU, указываемыми в остальной части книги, измерьте время, затраченное от момента конфигурирования и до завершения первой установки. Чтобы упростить измерение этого времени, поместите, например, внутрь команды time следующие три команды: time { ./configure ... && make && make install; }.

Замечание

В приблизительных значениях времени сборки в SBU и требуемого дискового пространства в MB, указываемых в главе 5, не учитывается запуск тестовых наборов.

Теперь подготовим пакет Binutils для компиляции:

../binutils-2.21/configure \
    --target=$LFS_TGT --prefix=/tools \
    --disable-nls --disable-werror

Пояснение конфигурационных параметров:

--target=$LFS_TGT
 

Поскольку описание машины, указанное в переменной LFS_TGT, немного отличается от того, что возвращается скриптом config.guess, этот параметр сообщит скрипту configure, как для сборки кросс компоновщика следует настроить систему сборки пакета Binutil.

--prefix=/tools
 

В этом параметре скрипту configure указано подготовить установку программ Binutils в директории /tools.

--disable-nls
 

Этот параметр отключает возможности интернационализации, обозначаемые как i18n, которые не нужны во временном инструментальном наборе.

--disable-werror
 

Это параметр предотвращает остановку процесса сборки в случаях, когда от компилятора хост системы поступят предупреждающее сообщения.

Продолжайте компилирование пакета:

make

Компиляция теперь завершена. Обычно в этот момент нам следовало бы запустить набор тестов, но на этой ранней стадии фреймворк для набора тестов (Tcl, Expect и DejaGNU) еще не установлен. Преимущества запуска тестов в настоящий момент минимальные, поскольку программы, созданные на этом первом проходе, скоро будут заменены программами, собранными на втором проходе.

Если сборка выполняется на архитектуре x86_64, создайте символическую ссылку, которая позволит выполнить чистую сборку набора инструментальных средств:

case $(uname -m) in
  x86_64) mkdir -v /tools/lib && ln -sv lib /tools/lib64 ;;
esac

Установите пакет:

make install

Подробности об этом пакете приведены в разделе " Описание пакета Binutils".


Предыдущий раздел: Оглавление Следующий раздел:
Общие инструкции по компиляции   Пакет GCC-4.5.2 - Первый проход