3.8 KiB
Создание базовых директорий и символических ссылок
Каталог для хранения пакетов и патчей
Для сборки кросс компилятора и в дальнейшем целевой системы, понядобятся пакеты и патчи, сборкой которых мы будет заниматься в дальнейшем.
Загруженные пакеты и патчи необходимо сохранить на файловой системе. Нужен рабочий каталог, в котором можно будет распаковывать пакеты и выполнять их настройку и компиляцию. Каталог $LIN/sources
может быть использован как место для хранения, а также как место для настройки и компиляции. Используя этот каталог, необходимые элементы будут расположены и доступны на всех этапах создания системы.
Чтобы создать такой каталог, выполните следующую команду от пользователя root
, до начала процесса загрузки пакетов и патчей:
mkdir -v $LIN/sources
Создание каталога $LIN/tools
Все программы которые будут скомпилированы следующей части, будут установлены в каталог $LIN/tools
чтобы можно было оставить их отдельно от сборки конечной системы. Программы которые будут скомпилированы - временные инструменты и не будут входить в конечную сборку системы.
После использования кросс-компилятора, от него можно избавиться. Использование каталога $LIN/tools
необходимо для того, чтобы не засорять рабочие каталоги хост-системы.
Кросс-компилятор будет установлен в директорию /tools
, создайте её:
mkdir -pv $LIN/tools
Следующим шагом, будет создание символической ссылки /tools
в хост-системе, которая будет указывать на созданный каталог с кросс-компилятором.
Данная операция необходима исключительно для удобства и универсальности, в случае, если вы измените путь до каталога $LIN/tools
то необходимо будет изменить символическую ссылку, поскольку все полседующие инструкции будут работать с указанием на путь /tools
.
ln -sv $LIN/tools /
Создание иеархии файловой системы
Теперь создайте базовую иеархию файловой системы:
Подробнее об иерархии каталогов можно узнать в спецификации FHS
Для MultiLib
Создайте директорию для 32-битных библиотек:
mkdir -pv $LIN/usr/lib32
А также символическую ссылку на неё
ln -sv usr/lib32 $LIN/lib32