mirror of
https://github.com/Linux4Yourself/book.git
synced 2025-02-04 07:57:20 +08:00
31 lines
3.4 KiB
Markdown
31 lines
3.4 KiB
Markdown
# Целевые архитектуры
|
||
|
||
Основной целевой архитектурой является `x86_64` (64-разрядная).
|
||
|
||
С другой стороны, инструкции в этой книге также работают, с некоторыми модификациями, с Power PC, ARM и AMD / Intel x86 (32-bit) процессорами.
|
||
|
||
Чтобы собрать систему, которая должна работать на одном из вышеуказанных процессоров, главным условием является существующая операционная система Linux, например уже ранее собранная система по инструкциям этой книги, Ubuntu, Red Hat/Fedora, SuSE, или другой дистрибутив, который нацелен на требуемую архитектуру.
|
||
|
||
Также обратите внимание, что 32-разрядный дистрибутив может быть установлен и использоваться как хост-система на 64-разрядном AMD / Intel компьютере.
|
||
|
||
## О поддержке multilib
|
||
|
||
В данной книге присутствует частичная поддержка multilib.
|
||
|
||
### Что такое multilib
|
||
|
||
Процессоры ``X86_64`` могут выполнять как скомпилированный для них код, так и скомпилированный для архитектуры ``i386``.
|
||
Но, 32-битные исполняемые файлы работают только с 32-битными библиотеками (а 64-битные - только с 64-битными библиотеками), поэтому для запуска 32-битного исполняемого файла требуются 32-битные версии библиотек которые он использует.
|
||
Если в ОС присутствуют библиотеки для нескольких архитектур - её называют multilib системой.
|
||
|
||
### Зачем это нужно
|
||
|
||
Некоторые программы с закрытым исходным кодом до сих пор имеют только 32-битные версии. Для Linux таких программ не много, а вот для Windows их существует огромное количество. А для того что бы запустить их необходим Wine с поддержкой мультилиб. Steam тоже предоставляет возможности для запуска 32-битных игр и поэтому требует multilib.
|
||
|
||
### Как это реализовано в книге
|
||
|
||
В книге присутствуют инструкции в конце многих страниц для мультилиб систем. Поддержка multilib является опциональной - если Вам она не нужна - не выполняйте эти инструкции.
|
||
Поддержка multilib является частичной - инструкции для сборки 32-битных версий библиотек предоставляются только тогда, когда они необходимы для сборки пакета.
|
||
|
||
[Подробнее про архитектуры процессора](additional/cpu-arch)
|