Turnip+Zink в ExaGear: Difference between revisions
(Created page with "'''Turnip+Zink''' в '''ExaGear Windows Emulator''' используется как один из методов для достижения полноценного аппаратного ускорения. В данной статье показана инструкция по компиляции ''Mesa с Turnip+Zink'' с последующей установкой собранных библиотек...") |
(→Сборка Mesa с Turnip+Zink для использования в ExaGear: (не завершено)) |
||
Line 1: | Line 1: | ||
'''[[Turnip(ru)|Turnip]][[Zink(ru)|+Zink]]''' в [[О продуктах ExaGear|'''ExaGear Windows Emulator''']] используется как один из методов для достижения полноценного аппаратного ускорения. В данной статье показана инструкция по компиляции ''Mesa с Turnip+Zink'' с последующей установкой собранных библиотек в ''ExaGear Windows Emulato''r. | '''[[Turnip(ru)|Turnip]][[Zink(ru)|+Zink]]''' в [[О продуктах ExaGear|'''ExaGear Windows Emulator''']] используется как один из методов для достижения полноценного аппаратного ускорения. | ||
В данной статье показана инструкция по компиляции '''''Mesa''' с Turnip+Zink'' с последующей установкой собранных библиотек в ''ExaGear Windows Emulato''r. | |||
В '''ExaGear RPG/Strategies''' нельзя задействовать '''Turnip+Zink'''. | В '''ExaGear RPG/Strategies''' нельзя задействовать '''Turnip+Zink'''. | ||
== Сборка Mesa с Turnip+Zink для использования в ExaGear == | == Сборка Mesa с Turnip+Zink для использования в ExaGear == | ||
Для сборки '''Turnip+Zink''' с последующим использованием в ExaGear, необходимо иметь компьютер или ноутбук с установленной i386(не х86_64, поскольку '''ExaGear Windows Emulator''' имеет поддержку трансляции в ARM только 32 битного кода) ''GNU/Linux'' операционной системой. | |||
Для сборки последней версии в данной инструкции будет использоваться ''Debian 12(sid)''. | |||
Вы также можете установить '''Turnip+Zink''' в '''ExaGear Windows Emulator''' с помощью данных установщиков(рекомендуется версия от 01.08.22): https://drive.google.com/drive/folders/15TElVFjHc9hAQxdd2MMYB6o3_lo38X7y | |||
==== Установка зависимостей ==== | |||
Для начала откройте файл <code>/etc/apt/sources.list</code> с помощью текстового редактора. Скопируйте строки подобные <code>deb <nowiki>http://ftp.ua.debian.org/debian/</nowiki> bookworm main</code> и вставьте их уже с <code>deb-src</code>, например <code>deb-src <nowiki>http://ftp.ua.debian.org/debian/</nowiki> bookworm main</code> | |||
Если <code>deb-src</code> уже есть в вашем <code>sources.list</code>, то ничего редактировать не нужно. | |||
Сохраните изменения, и введите команду <code>sudo apt update</code>, после обновления пакетов установите зависимости для сборки '''Mesa''': <code>sudo apt build-dep mesa -y</code> | |||
==== Скачивание Mesa3D и Zink-Mesa-Xlib ==== | |||
Поскольку ''Х-сервер'' '''ExaGear Windows Emulator''' корректно работает только с xlib(библиотека функций клиента системы X Window, нsuаписанная на языке Си), а не на dri(''Direct Rendering Infrastructure),'' то для работы Zink в '''ExaGear''' необходима пропатченная пользователем alexvorxx версия [https://github.com/alexvorxx/Zink-Mesa-Xlib Mesa] | |||
----Установите git, если он не установлен: <code>sudo apt install git -y</code> и склонируйте репозитории [https://github.com/mesa3d/mesa Mesa3D] и Zink-Mesa-Xlib: | |||
# <code>git clone <nowiki>https://github.com/mesa3d/mesa</nowiki></code> | |||
# <code>git clone <nowiki>https://github.com/alexvorxx/Zink-Mesa-Xlib</nowiki></code> | |||
Если используется Debian 11 и ниже, или Ubuntu 18.04, то перед сборкой mesa необходимо скомпилировать последние версии программ, список которых есть ниже: | |||
# [https://gitlab.freedesktop.org/glvnd/libglvnв https://gitlab.freedesktop.org/glvnd/libglvnd] | |||
# https://dri.freedesktop.org/libdrm | |||
# [https://gitlab.freedesktop.org/wayland/waylandhttps://gitlab.freedesktop.org/wayland/wayland-protocols https://gitlab.freedesktop.org/wayland/wayland] | |||
# [https://gitlab.freedesktop.org/wayland/waylandhttps://gitlab.freedesktop.org/wayland/wayland-protocols https://gitlab.freedesktop.org/wayland/wayland-protocols] | |||
Данные репозитории также можно склонировать с помощью <code>git clone</code>, инструкция по сборке есть в README. | |||
---- | |||
==== Сборка mesa ==== | |||
После сборки необходимых зависимостей, перейдите в папку, и соберите <code>mesa</code>: | |||
<code>meson build -D platforms=x11,wayland -D gallium-drivers=swrast,zink -D vulkan-drivers=freedreno -D dri3=enabled -D egl=enabled -D gles2=enabled -D glvnd=true -D glx=dri -D osmesa=true --prefix /usr -D gles=enabled -D freedreno-kgsl=true && sudo ninja -C build install</code> | |||
Если во время компиляции будет ошибка об отстуствии файла drm.h, drm_mode.h, скопируйте данные файлы в <code>/usr/include</code>: | |||
# <code>sudo cp /usr/include/libdrm/drm.h /usr/include</code> | |||
# <code>sudo cp /usr/include/libdrm/drm_mode.h /usr/include</code> | |||
==== Сборка Zink-Mesa-Xlib ==== | |||
После установки mesa, перейдите в папку '''Zink-Mesa-Xlib''', и соберите Mesa с Zink: | |||
<code>meson . build -Dgallium-va=false -Ddri-drivers= -Dgallium-drivers=virgl,zink,swrast -Ddri3=true -Dvulkan-drivers= -Dglx=xlib -Dplatforms=x11 -Dbuildtype=release && sudo ninja -C build install</code> | |||
После компиляции, собранные библиотеки можно скопировать в архив, и установить в '''ExaGear Windows Emulator''' | |||
==== Установка в ExaGear ==== | |||
'''Не завершено''' | '''Не завершено''' |
Revision as of 22:43, 25 September 2022
Turnip+Zink в ExaGear Windows Emulator используется как один из методов для достижения полноценного аппаратного ускорения.
В данной статье показана инструкция по компиляции Mesa с Turnip+Zink с последующей установкой собранных библиотек в ExaGear Windows Emulator.
В ExaGear RPG/Strategies нельзя задействовать Turnip+Zink.
Сборка Mesa с Turnip+Zink для использования в ExaGear
Для сборки Turnip+Zink с последующим использованием в ExaGear, необходимо иметь компьютер или ноутбук с установленной i386(не х86_64, поскольку ExaGear Windows Emulator имеет поддержку трансляции в ARM только 32 битного кода) GNU/Linux операционной системой.
Для сборки последней версии в данной инструкции будет использоваться Debian 12(sid).
Вы также можете установить Turnip+Zink в ExaGear Windows Emulator с помощью данных установщиков(рекомендуется версия от 01.08.22): https://drive.google.com/drive/folders/15TElVFjHc9hAQxdd2MMYB6o3_lo38X7y
Установка зависимостей
Для начала откройте файл /etc/apt/sources.list
с помощью текстового редактора. Скопируйте строки подобные deb http://ftp.ua.debian.org/debian/ bookworm main
и вставьте их уже с deb-src
, например deb-src http://ftp.ua.debian.org/debian/ bookworm main
Если deb-src
уже есть в вашем sources.list
, то ничего редактировать не нужно.
Сохраните изменения, и введите команду sudo apt update
, после обновления пакетов установите зависимости для сборки Mesa: sudo apt build-dep mesa -y
Скачивание Mesa3D и Zink-Mesa-Xlib
Поскольку Х-сервер ExaGear Windows Emulator корректно работает только с xlib(библиотека функций клиента системы X Window, нsuаписанная на языке Си), а не на dri(Direct Rendering Infrastructure), то для работы Zink в ExaGear необходима пропатченная пользователем alexvorxx версия Mesa
Установите git, если он не установлен: sudo apt install git -y
и склонируйте репозитории Mesa3D и Zink-Mesa-Xlib:
git clone https://github.com/mesa3d/mesa
git clone https://github.com/alexvorxx/Zink-Mesa-Xlib
Если используется Debian 11 и ниже, или Ubuntu 18.04, то перед сборкой mesa необходимо скомпилировать последние версии программ, список которых есть ниже:
- https://gitlab.freedesktop.org/glvnd/libglvnd
- https://dri.freedesktop.org/libdrm
- https://gitlab.freedesktop.org/wayland/wayland
- https://gitlab.freedesktop.org/wayland/wayland-protocols
Данные репозитории также можно склонировать с помощью git clone
, инструкция по сборке есть в README.
Сборка mesa
После сборки необходимых зависимостей, перейдите в папку, и соберите mesa
:
meson build -D platforms=x11,wayland -D gallium-drivers=swrast,zink -D vulkan-drivers=freedreno -D dri3=enabled -D egl=enabled -D gles2=enabled -D glvnd=true -D glx=dri -D osmesa=true --prefix /usr -D gles=enabled -D freedreno-kgsl=true && sudo ninja -C build install
Если во время компиляции будет ошибка об отстуствии файла drm.h, drm_mode.h, скопируйте данные файлы в /usr/include
:
sudo cp /usr/include/libdrm/drm.h /usr/include
sudo cp /usr/include/libdrm/drm_mode.h /usr/include
Сборка Zink-Mesa-Xlib
После установки mesa, перейдите в папку Zink-Mesa-Xlib, и соберите Mesa с Zink:
meson . build -Dgallium-va=false -Ddri-drivers= -Dgallium-drivers=virgl,zink,swrast -Ddri3=true -Dvulkan-drivers= -Dglx=xlib -Dplatforms=x11 -Dbuildtype=release && sudo ninja -C build install
После компиляции, собранные библиотеки можно скопировать в архив, и установить в ExaGear Windows Emulator
Установка в ExaGear
Не завершено