Как запустить тяжелые игры и софт для x86 на процессорах Arm и RISC-V

20 июл 2026
5,598
453
78
2 недели

Представьте, что вы купили новенький одноплатник на Arm или мощный сервер на RISC-V, накатили Linux и... уткнулись в стену. Любимая игра из Steam, проприетарный софт для работы или старый добрый Wine просто отказываются запускаться. Они скомпилированы под x86_64, а у вас совсем другая архитектура. Обычно в таких случаях советуют QEMU, но играть через него — то еще удовольствие: тормоза такие, что проще сразу выключить.

Проект box64 решает эту проблему изящно. Это не просто эмулятор, а прослойка, которая умеет «подсовывать» эмулируемому приложению нативные библиотеки вашей системы.

Official logo

В чем фишка этого эмулятора

Большинство эмуляторов пытаются честно переводить каждую инструкцию процессора. Это надежно, но очень медленно. Разработчик box64 (известный под ником ptitSeb) пошел другим путем.

Когда программа на x86_64 вызывает системную функцию — например, хочет отрисовать графику через OpenGL или выделить память через libc — box64 не эмулирует этот вызов внутри виртуального окружения. Вместо этого он перенаправляет вызов напрямую в нативные библиотеки вашего устройства (Arm64 или RISC-V).

Реклама

В итоге тяжелые вычисления ложатся на плечи «родного» железа, а эмулируется только логика самого приложения. Это дает колоссальный прирост скорости. По тестам автора, связка с динамическим рекомпилятором (DynaRec) работает в 5–10 раз быстрее, чем обычный интерпретатор.

Что можно запустить

Список совместимости у проекта огромный. В первую очередь он ориентирован на геймеров и тех, кто использует специфический софт.

  1. Игры из Steam. Да, на Raspberry Pi 4 или 5 можно запустить игры, которые никогда не портировались под Arm.
  2. Wine и Proton. Это открывает путь к запуску Windows-приложений. Если у вас стоят и box64, и его «младший брат» box86 (для 32-битных программ), можно заставить работать почти любой софт.
  3. Unity-игры. Тут есть нюанс: они часто требуют свежий OpenGL. На некоторых платах приходится использовать переменные окружения, чтобы «обмануть» драйвер и заставить игру работать.

Интересно, что проект поддерживает даже специфические архитектуры вроде LoongArch. Видно, что сообщество активно помогает железом: в списке благодарностей значатся и Adlink, и Pine64, и даже команды разработчиков Deepin.

Как это работает на практике

Пользоваться инструментом на удивление просто. Если вы уже скомпилировали проект (инструкции в репозитории подробные, хоть и требуют установки кучи зависимостей), запуск выглядит так:

box64 ./my_x86_64_program

Если нужно запустить целый скрипт установки (например, от GOG), который проверяет архитектуру через uname -m, можно сделать так:

box64 script.sh

Внутри box64 подменит ответ системы, и скрипт решит, что он работает на обычном x86-процессоре.

Для тех, кто не хочет каждый раз вводить команду, есть box64-bash — это привычная оболочка, где все запускаемые бинарники автоматически подхватываются эмулятором.

Нюансы и подводные камни

Не стоит ждать, что все заработает «из коробки» с идеальной частотой кадров.

Во-первых, кэширование. При первом запуске box64 генерирует оптимизированный код и сохраняет его в ~/.cache/box64. Это ускоряет последующие запуски, но может «съесть» до 2 ГБ места на диске. Если место дорого, это поведение придется ограничивать через конфиг.

Во-вторых, графика. На Raspberry Pi часто приходится выставлять костыли вроде:

MESA_GL_VERSION_OVERRIDE=3.2 BOX64_DYNAREC_STRONGMEM=1 box64 ./game

Это нужно, чтобы избежать фризов из-за разницы в том, как x86 и Arm работают с памятью.

В-третьих, 32-битные приложения. Box64 работает только с 64-битными бинарниками. Если вам нужно запустить старую игрушку, придется ставить box86. Сейчас ведется работа над box32, но автор честно пишет, что проект пока экспериментальный.

Стоит ли пробовать

Если вы разработчик, который хочет переехать на Arm-лэптоп с Linux, или энтузиаст с RISC-V платой — определенно да. Это самый живой и производительный проект в своей нише.

Box64 не пытается заменить полноценную виртуализацию, он просто дает возможность пользоваться привычным софтом там, где его быть не должно. Проект написан на C, очень компактный и гибкий в настройке.

Конечно, документация местами разбросана по разным файлам, а для настройки Wine придется покурить мануалы, но результат того стоит. Когда на маленькой плате за пару десятков долларов заводится софт, предназначенный для мощных десктопов, это ощущается как маленькая магия.

Посмотреть исходники и инструкции по сборке можно в официальном репозитории ptitSeb/box64. Там же есть ссылки на списки совместимости игр, которые пополняются почти ежедневно.

🍪 Мы используем файлы cookie и сервис аналитики Яндекс.Метрика, чтобы сайт работал лучше. Продолжая пользоваться devtrends.ru, вы соглашаетесь с обработкой данных согласно Политике конфиденциальности.