При сборке пакетов в инструкциях делается несколько допущений:
На некоторые пакеты необходимо наложить патчи перед компиляцией, метод использется тогда, когда исправление необходимо для решения проблем сборки. Патчи часто требются как в этой, так и в следующих главах, но иногда только в одном месте. Поэтому не беспокойтесь, если инструкции для скачанного патча отсутствуют. Предупреждающие сообщения о смещении или размытии также могут появляться при применении патча. Не обращайте внимания на эти предупреждения, когда патч был успешно применен.
Во время компиляции большинства пакетов на экране будут отображаться предупреждения. Это нормально, и их можно смело игнорировать. Предупреждения появляются, например, когда используется устаревший, недопустимый синтаксис C или C++. Стандарты C меняются довольно часто, и некоторые пакеты все еще используют более старый стандарт. Это не является проблемой, но вызывает предупреждения.
Проверьте в последний раз, что переменная среды LFS
настроена правильно:
echo $LFS
Убедитесь, что в выводе указан путь к точке монтирования
раздела LFS, то есть /mnt/lfs
,
как в примере из этой книги.
Наконец, необходимо подчеркнуть два важных момента:
Инструкции по сборке предполагают, что Требования к хост-системе, включая символические ссылки, установлены правильно:
bash это используемая оболочка.
sh это символическая ссылка на bash.
/usr/bin/awk это символическая ссылка на gawk.
/usr/bin/yacc это символическая ссылка на bison или небольшой скрипт, который выполняет bison
Еще раз обратим внимание на процесс сборки:
Поместите все исходники и патчи в каталог, который
будет доступен из среды chroot, например, /mnt/lfs/sources/
.
Перейдите в каталог с исходными кодами.
С помощью программы tar извлеките пакет для сборки. В Глава 5 и Глава 6 убедитесь, что при извлечении пакета вы залогинены под пользователем lfs.
Все методы получения дерева исходного кода на месте сборки, кроме извлечения tar-архива, не поддерживаются. Примечательно, что использование cp -R для копирования дерева исходного кода в другое место может привести к уничтожению ссылок и временных меток в дереве исходного кода и вызвать сбой сборки.
Перейдите в каталог, созданный при извлечении пакета.
Следуйте инструкциям книги по сборке пакета.
Вернитесь в исходный каталог.
Удалите извлеченный каталог, если не указано иное.