Biarch — различия между версиями

Материал из ALT Linux Wiki
Перейти к: навигация, поиск
(Публичный репозиторий arepo в ALT Linux)
(32-битные приложения для Linux)
 
(не показаны 43 промежуточные версии 9 участников)
Строка 1: Строка 1:
 +
= Поддержка исполнения приложений нескольких архитектур в одной операционной системе (Biarch) =
 +
 
== Описание ==
 
== Описание ==
  
Строка 9: Строка 11:
  
 
== Список приложений, требующих biarch ==
 
== Список приложений, требующих biarch ==
 +
=== 32-битные приложения для Linux ===
  
* Adobe Acrobat Reader
+
* [[:ruwp:Steam|Steam]]
 +
* [http://rnmc.ru/default.asp?trID=471 ОМС-плеер]
 +
* [[Adobe Acrobat Reader]]
 +
* Foxit Reader
 +
* VueScan
 
* Runtime демоны для Hasp (aksusbd)
 
* Runtime демоны для Hasp (aksusbd)
* [[GoogleEarth|Google Earth]]
 
 
* Google Picasa
 
* Google Picasa
 
* [[OracleALS40/x86_64|Oracle 10g, 11g]] (программа установки)
 
* [[OracleALS40/x86_64|Oracle 10g, 11g]] (программа установки)
 
* [[Skype]]
 
* [[Skype]]
* WINE
+
* [[Quartus]]
* Программа установки Altera QuartusII. [http://www.altera.com/download/os-support/oss-index.html]
 
 
* Xilinx ISE [http://www.xilinx.com/ise/ossupport/index.htm]
 
* Xilinx ISE [http://www.xilinx.com/ise/ossupport/index.htm]
 +
* CadSoft EAGLE
 +
* Guitar Pro 6
 
* RAID Web Console 2 (RWC2)
 
* RAID Web Console 2 (RWC2)
* ДубльГИС (http://www.2gis.ru/)
+
* Netup UTM [http://www.netup.ru/UTM5/]
* Netup UTM (http://www.netup.ru/UTM5/)
+
* [[Citrix Client|Citrix Receiver]] for Linux [http://www.citrix.com/English/SS/downloads/details.asp?downloadID=3323]
* Citrix Receiver for Linux (http://www.citrix.com/English/SS/downloads/details.asp?downloadID=3323)
+
* WINE 32-бит (для соответствующих Windows-приложений)
 +
 
 +
=== 32-битные приложения для Windows (32-битный Wine) ===
 +
* ДубльГИС (http://www.2gis.ru/)
  
 
== Реализации ==
 
== Реализации ==
 +
Распространены два подхода к реализации biarch: «а-ля Red Hat» с использованием file coloring в {{pkg|rpm}} и «а-ля Novell» с перепаковкой нужных 32-битных частей в явном виде. В ALT Linux реализован второй, который не требует поддержки со стороны пакетного менеджера, но определяется возможностями инструмента конверсии.
 +
 +
=== «arepo 1.0» ===
 +
 +
[http://sisyphus.ru/srpm/arepo arepo] имени {{man|avm}} — специальный инструмент для перепаковки пакетов для одной архитектуры (i586) в пакеты для другой архитектуры (x86_64).  Отрабатывает асинхронно со сборкой пакетов в основной репозиторий, результатом чего нередко была рассинхронизация дополнительного по версиям.
 +
 +
=== «arepo 2.0» ===
 +
 +
С целью избежания задержки обновления дополнительных репозиториев разработана новая версия '''[http://lists.altlinux.org/pipermail/sisyphus/2012-April/357216.html arepo 2.0]''' (пакет {{pkg|rpmrebuild-arepo}}). В настоящее время работает синхронно при сборке пакетов в '''Sisyphus''' и бранчи, начиная с '''p6'''/'''t6'''.  Смотрите также [http://lists.altlinux.org/pipermail/devel/2012-April/193781.html описание ldv@].
 +
 +
=== Замечания по обновлению ===
 +
Внимание: '''arepo-репозитории x86_32 и x86_64-i586 несовместимы''' (одноименные пакеты отличаются по составу и зависимостям), автоматическое обновление со старого на новый '''не предусмотрено'''. Тем, у кого используется arepo-репозиторий x86_32, перед началом использования arepo-репозитория x86_64-i586 '''настоятельно рекомендуется''' удалить все пакеты, имя которых начинается на «i586-», или принудительно переустановить их все после подключения нового репозитария; поскольку новый оверлей несёт больше пакетов, также рекомендуется добавить <tt>APT::Cache-Limit 67108864;</tt> в {{path|/etc/apt/apt.conf}}.
 +
 +
Типичный {{path|/etc/apt/sources.list}} для Sisyphus, для желающих использовать arepo, теперь выглядит так:
 +
<pre>rpm [alt] ftp://ftp.altlinux.org/pub/distributions/ALTLinux/Sisyphus x86_64 classic
 +
rpm [alt] ftp://ftp.altlinux.org/pub/distributions/ALTLinux/Sisyphus noarch classic
 +
rpm [alt] ftp://ftp.altlinux.org/pub/distributions/ALTLinux/Sisyphus x86_64-i586 classic</pre>
 +
 +
Переустановка i586-пакетов<ref>[http://lists.altlinux.org/pipermail/community/2012-April/676285.html ldv@ в community@]</ref>:
 +
apt-get reinstall $(rpmquery -a --qf '%{name} ' 'i586-*')
  
=== «а-ля Novell» ===
+
== Публичные репозитории arepo в ALT Linux ==
 +
{{main|Ports/x8664/32bitOn64bit}}
 +
Обратите внимание: некоторые из перечисленных репозиториев несовместимы между собой.
  
Данный вид biarch использует специальный инструмент для перепаковки пакетов из одной архитектуры в пакеты другой архитектуры. В ALT Linux таким инструментом является [http://sisyphus.ru/srpm/arepo arepo] имени avm@.
+
=== Sisyphus ===
 +
* официальный:
 +
** <tt>rpm [alt] http://ftp.altlinux.org/pub/distributions/ALTLinux/Sisyphus x86_64-i586 classic</tt>
  
Такая реализация не требует поддержки со стороны пакетного менеджера, но ограничена возможностями инструмента конверсии.
+
* Etersoft ({{man|lav}}):
 +
** <tt>rpm ftp://updates.etersoft.ru/pub/ALTLinux/Sisyphus x86_32 classic</tt>
 +
<!--
 +
* {{man|mithraen}}:
 +
** rpm http://downloads.mithraen.ru/arepo/sisyphus i586 classic -->
  
Смотри [[Ports/x8664/32bitOn64bit|перепакованные arepo i586-репозитории]].
+
=== p8/t8 ===
 +
* официальный:
 +
** <tt>rpm [p8] http://ftp.altlinux.org/pub/distributions/ALTLinux/p8/branch x86_64-i586 classic</tt>
  
==== Публичный репозиторий arepo в ALT Linux ====
+
=== p7/t7 ===
Для бранча p6:
+
* официальный:
 +
** <tt>rpm [p7] http://ftp.altlinux.org/pub/distributions/ALTLinux/p7/branch x86_64-i586 classic</tt>
 +
<!---
 +
* Etersoft ({{man|lav}}):
 +
** <source lang=text>rpm ftp://updates.etersoft.ru/pub/ALTLinux/p7/branch x86_64-i586 classic</source>
 +
-->
  
<pre>rpm http://ftp.altlinux.org/pub/distributions/ALTLinux/p6/branch     x86_32 classic</pre>
+
=== p6/t6 ===
 +
* официальный:
 +
** <tt>rpm [p6] http://ftp.altlinux.org/pub/distributions/ALTLinux/p6/branch x86_64-i586 classic</tt>
 +
** <tt>rpm [p6] http://ftp.altlinux.org/pub/distributions/ALTLinux/t6/branch x86_64-i586 classic</tt>
 +
* предыдущий:
 +
** <tt>rpm http://ftp.altlinux.org/pub/distributions/ALTLinux/p6/branch x86_32 classic</tt>
 +
** <tt>rpm http://ftp.altlinux.org/pub/distributions/ALTLinux/t6/branch x86_32 classic</tt>
  
Поддерживаются '''p6''', '''t6''', '''p5''' и '''5.1'''. Может быть задержка обновления после публикации репозитория вплоть до суток.
+
* Etersoft ({{man|lav}}):
Добавление пакетов в него делается весьма оперативно, достаточно письма в community@altlinux.org со словами "нужно заарепать пакет bla-bla-bla".
+
** <tt>rpm ftp://updates.etersoft.ru/pub/ALTLinux/p6 x86_32 classic</tt>
 +
** <tt>rpm ftp://updates.etersoft.ru/pub/ALTLinux/t6 x86_32 classic</tt>
 +
<!--
 +
* {{man|mithraen}}:
 +
** http://downloads.mithraen.ru/arepo/p6 i586 classic
 +
** http://downloads.mithraen.ru/arepo/t6 i586 classic -->
  
=== «arepo 2.===
+
=== p5/5.1 ===
 +
* Etersoft ({{man|lav}}):
 +
** <tt>rpm ftp://updates.etersoft.ru/pub/ALTLinux/p5 x86_32 classic</tt>
 +
** <tt>rpm ftp://updates.etersoft.ru/pub/ALTLinux/5.1 x86_32 classic</tt>
  
С целью избежания задержки обновления репозиториев arepo, разработана новая версия arepo 2.0. [http://lists.altlinux.org/pipermail/sisyphus/2012-April/357216.html/ Анонс arepo 2.0]. В настоящее время работает на '''Sisyphus''', планируется реализация для веток '''p6''' и '''t6'''.
+
=== 4.x ===
Смотрите также описание [[Sisyphus_changes#.D0.90.D0.BF.D1.80.D0.B5.D0.BB.D1.8C| тут]].
+
* Etersoft ({{man|lav}}):
 +
** <tt>rpm ftp://updates.etersoft.ru/pub/ALTLinux/4.1 x86_32 classic</tt>
 +
** <tt>rpm ftp://updates.etersoft.ru/pub/ALTLinux/4.0 x86_32 classic</tt>
  
 
== Ссылки ==
 
== Ссылки ==
 +
* [[32-битный OpenGL на 64-битной системе с драйвером NVIDIA]]
 +
* [[32-битный OpenGL на 64-битной системе с драйвером Intel]]
 
* http://gcc.gnu.org/ml/gcc/1999-04n/msg00648.html
 
* http://gcc.gnu.org/ml/gcc/1999-04n/msg00648.html
 
* http://lists.altlinux.org/pipermail/devel/2007-September/144487.html и далее
 
* http://lists.altlinux.org/pipermail/devel/2007-September/144487.html и далее
 
* http://www.mail-archive.com/devel-ports@lists.altlinux.org/msg00085.html
 
* http://www.mail-archive.com/devel-ports@lists.altlinux.org/msg00085.html
 +
* http://lists.altlinux.org/pipermail/devel/2014-July/198914.html (unmets на i586-*)
 +
 +
== Примечания ==
 +
<references />
  
 
[[Категория:Devel]]
 
[[Категория:Devel]]
 +
[[Категория:Admin]]
 +
{{Category navigation|title=Системному администратору|category=Admin|sortkey={{SUBPAGENAME}}}}

Текущая версия на 18:27, 14 января 2017

Поддержка исполнения приложений нескольких архитектур в одной операционной системе (Biarch)[править]

Описание[править]

Biarch — поддержка исполнения кода для нескольких архитектур или ABI в одной системе (например, запуск 32-битных приложений на x86_64, или EABI и OABI-приложений на ARM). В случае более чем двух архитектур поддержка называется multiarch (например, запуск 16-, 32- и 64-битного кода на MIPS).

Требует поддержки со стороны многих компонентов системы:

  • компилятор и toolchain вообще должны уметь собирать код под необходимые архитектуры и ABI
  • пакетный менеджер должен уметь работать с пакетами для нескольких архитектур
  • упаковка приложений должна вестись образом, позволяющим сосуществование пакетов для разных архитектур в одной файловой системе.

Список приложений, требующих biarch[править]

32-битные приложения для Linux[править]

32-битные приложения для Windows (32-битный Wine)[править]

Реализации[править]

Распространены два подхода к реализации biarch: «а-ля Red Hat» с использованием file coloring в rpm и «а-ля Novell» с перепаковкой нужных 32-битных частей в явном виде. В ALT Linux реализован второй, который не требует поддержки со стороны пакетного менеджера, но определяется возможностями инструмента конверсии.

«arepo 1.0»[править]

arepo имени avm@ — специальный инструмент для перепаковки пакетов для одной архитектуры (i586) в пакеты для другой архитектуры (x86_64). Отрабатывает асинхронно со сборкой пакетов в основной репозиторий, результатом чего нередко была рассинхронизация дополнительного по версиям.

«arepo 2.0»[править]

С целью избежания задержки обновления дополнительных репозиториев разработана новая версия arepo 2.0 (пакет rpmrebuild-arepo). В настоящее время работает синхронно при сборке пакетов в Sisyphus и бранчи, начиная с p6/t6. Смотрите также описание ldv@.

Замечания по обновлению[править]

Внимание: arepo-репозитории x86_32 и x86_64-i586 несовместимы (одноименные пакеты отличаются по составу и зависимостям), автоматическое обновление со старого на новый не предусмотрено. Тем, у кого используется arepo-репозиторий x86_32, перед началом использования arepo-репозитория x86_64-i586 настоятельно рекомендуется удалить все пакеты, имя которых начинается на «i586-», или принудительно переустановить их все после подключения нового репозитария; поскольку новый оверлей несёт больше пакетов, также рекомендуется добавить APT::Cache-Limit 67108864; в /etc/apt/apt.conf.

Типичный /etc/apt/sources.list для Sisyphus, для желающих использовать arepo, теперь выглядит так:

rpm [alt] ftp://ftp.altlinux.org/pub/distributions/ALTLinux/Sisyphus x86_64 classic
rpm [alt] ftp://ftp.altlinux.org/pub/distributions/ALTLinux/Sisyphus noarch classic
rpm [alt] ftp://ftp.altlinux.org/pub/distributions/ALTLinux/Sisyphus x86_64-i586 classic

Переустановка i586-пакетов[1]:

apt-get reinstall $(rpmquery -a --qf '%{name} ' 'i586-*')

Публичные репозитории arepo в ALT Linux[править]

Основная статья: Ports/x8664/32bitOn64bit

Обратите внимание: некоторые из перечисленных репозиториев несовместимы между собой.

Sisyphus[править]

p8/t8[править]

p7/t7[править]

p6/t6[править]

p5/5.1[править]

4.x[править]

Ссылки[править]

Примечания[править]