Ports/loongarch64/libLoL: различия между версиями

Материал из ALT Linux Wiki
м (IvanMelnikov переименовал страницу Ports/loongarch64/New wold, old world, libLoL в Ports/loongarch64/libLoL: Миры ушли на отдельную страницу)
Нет описания правки
 
Строка 1: Строка 1:
{{Stub}}
{{Stub}}


== Старый и новый мир ==
[https://github.com/AOSC-Dev/liblol libLoL] (LoongArch on LoongArch) -- самое развитое решение а данный момент (осень 2024 года), предоставляющее слой совместимости для запуска приложений old world на системах из new world (см. [[Ports/loongarch64/Старый_и_новый_мир]]). Оно состоит из двух частей:
 
На данный момент (осень 2024 года) у LoongArch есть две несовместимые программные системы, которые принято называть new world (nw, "новый мир") и old world (ow, "старый мир").
 
Появление двух миров связано с тем, что компания Loongson использовала бизнес-стратегию тайной разработки и внезапного запуска LoongArch: они анонсировали новую архитектуру уже с готовой экосистемой коммерческих дистрибутивов Linux и стороннего, в том числе пропиретарного, ПО. Однако в процессе работы с сообществом оказалось, что нужно сделать некоторые несовместимые изменения. Так появились две несовместимых экосистемы ПО под loongarch64:
 
* '''old world''' -- китайские коммерческие дистрибутивы (Kirin, Loongnix, UOS), и совместимое с ними ПО, включая:
** Tencent's QQ for Linux
** Kingsoft's WPS Office for Linux
** Loongson Browser (основан на Chromium)
* '''new world''' -- всё свободное ПО и развиваемые на его основе дистрибутивы, включая, естественно, [[Ports/loongarch64|порт Сизифа]].
 
New world и old world не совместимы друг с другом по
* ABI загрузчика (EFI)
* набору системных вызовов ядра Линукс
* версиям символов системных библиотек (в основном частей GLIBC)
* ...
 
В результате, ПО, собранное для одного мира, нельзя запустить в другом.
 
== libLoL ==
 
На данный момент (осень 2024 года) [https://github.com/AOSC-Dev/liblol libLoL] (LoongArch on LoongArch) -- самое развитое решение, предоставляющее слой совместимости для запуска приложений old world на системах из new world. Оно состоит из двух частей:
* модуля ядра la_ow_syscall, реализующего дополнительные системные вызовы
* модуля ядра la_ow_syscall, реализующего дополнительные системные вызовы
* специальной патченной glibc, предоставляющий версии символов и дополнительные интерфейсы, нужные приложениям из old world.
* специальной патченной glibc, предоставляющий версии символов и дополнительные интерфейсы, нужные приложениям из old world.

Текущая версия от 14:14, 25 марта 2025

Stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.


libLoL (LoongArch on LoongArch) -- самое развитое решение а данный момент (осень 2024 года), предоставляющее слой совместимости для запуска приложений old world на системах из new world (см. Ports/loongarch64/Старый_и_новый_мир). Оно состоит из двух частей:

  • модуля ядра la_ow_syscall, реализующего дополнительные системные вызовы
  • специальной патченной glibc, предоставляющий версии символов и дополнительные интерфейсы, нужные приложениям из old world.

Для установки в ALT нужно поставить userspace-часть и модуль, собранный под используемое Вами ядро. Например, для ядра по умолчанию:

# apt-get install liblol kernel-modules-la_ow_syscall-loongarch

С нашим liblol проверены и работают:

  • wps-office 11.1.0.11719 (распакованый .deb)
  • Loongson Browser (lbrowser) 3.3.1876.3-1.stable
  • com.tencent.wechat 1.0.0.241
  • некоторые пакеты old-world дистрибутивов.