В этом разделе мы начинаем заполнять файловую систему LFS элементами, которые будут основой конечной системы Linux. Первым шагом является создание ограниченной иерархии каталогов, чтобы программы, скомпилированные в Глава 6 (а также glibc и libstdc++ в Глава 5), могли быть установлены в их конечном расположении. Это необходимо для того, чтобы эти временные программы были перезаписаны при сборке окончательных версий в Глава 8.
Создайте необходимую иерархию каталогов, выполнив следующую команду
от имени root
:
mkdir -pv $LFS/{etc,var} $LFS/usr/{bin,lib,sbin} for i in bin lib sbin; do ln -sv usr/$i $LFS/$i done case $(uname -m) in x86_64) mkdir -pv $LFS/lib64 ;; esac
mkdir -pv $LFS/usr/lib32 ln -sv usr/lib32 $LFS/lib32
Программы в Глава 6 будут скомпилированы с помощью кросс-компилятора (более подробная информация приведена в разделе Технические примечания по сборочным инструментам). Чтобы отделить кросс-компилятор от других программ, он будет установлен в специальный каталог. Создайте этот каталог с помощью следующей команды:
mkdir -pv $LFS/tools
Редакторы LFS намеренно решили не использовать каталог /usr/lib64
. В процессе сборки предпринимается ряд
шагов, чтобы убедиться, что набор инструментов не будет его
использовать. Если по какой-либо причине этот каталог появится (это
может произойти, если вы допустили ошибку, следуя инструкциям, или
потому что вы установили бинарный пакет, создавший его после сборки
LFS), это может привести к поломке вашей системы. Вы должны быть
уверены, что этого каталога не существует.