Linux From Scratch. Версия 6.0

Глава 5. Построение временной системы

5.14. Binutils-2.15.91.0.2 - Шаг 2

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

Расчетное время сборки 1.5 SBU

Требуемое место на диске 108 MB

Binutils зависит от установки: Bash, Coreutils, Diffutils, GCC, Gettext, Glibc, Grep, Make, Perl, Sed и Texinfo.

5.14.1. Переинсталлируем Binutils

Этот пакет известен своим нестабильным поведением при компиляции с измененными опциями оптимизации (включая опции -march и -mcpu ) . Binutils рекомендуется компилировать с настройками по умолчанию. Если вы задали переменные такие как CFLAGS или CXXFLAGS, изменяющие уровень оптимизации по умолчанию, рекомендуется убрать их при сборке пакета binutils. Изменяя оптимизации для binutils, вы действуете на свой страх и риск.

Опять создаем отдельную директорию для сборки:

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

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

../binutils-2.15.91.0.2/configure --prefix=/tools \
--enable-shared --with-lib-path=/tools/lib

Описание новых используемых опций:

--with-lib-path=/tools/lib

Этот параметр передает скрипту конфигурации путь по умолчанию для поиска библиотек. Мы не хотим, чтобы в пути поиска оказались библиотеки из нашей основной системы.

Компилируем пакет:

make

Компиляция завершена. Как было оговорено ранее, запуск теста Binutils не обязательно проводить при сборке временной системы. В любом случае для запуска теста Binutils используйте следующую команду:

make check

Устанавливаем пакет:

make install

Теперь подготовим Binutils к “переопределению”средств на следующей фазе в следующей главе:

make -C ld clean
make -C ld LIB_PATH=/usr/lib:/lib
[Warning]

Внимание

Не удаляйте сейчас директории для сборки и исходников Binutils. Эти директории будут нужны в следующей части в их нынешнем состоянии.

Детальная информация о пакете находится в Разделе 6.13.2, “Описание Binutils”.