Всем привет, хочу поделится с вами статьей о том как запустить на arm процессорах приложения под windows x86 с помощью Exagear и Wine. В частности на телефоне с установленным Nethunter, хотя аналогичные действия можно выполнить и на других девайсах (Raspberry PI, OnDroid и т.д.).
И так приступим к делу:
1. Нам понадобится скачать с официального сайта Exagear пакеты для установки под своё устройство:
Ссылки на скачивание Exagear
Ссылка скрыта от гостей
Ссылка скрыта от гостей
Ссылка скрыта от гостей
Ссылка скрыта от гостей
2. Скачиваем два архива, из таблеткой от жадности Exagear, в атачах: pk-000000003618.zip ubt_x32a32_al.zip
3. Перемещаем скачанный архив с официального сайта Exagear на наше устройство, и распаковываем:
tar -xvzpf exagear-desktop-armv7.tar.gz
4. В директорию куда распаковали архив копируем ключ из атачей к статье, предварительно распаковав.
5. Запускаем скрипт установки Exagear:
sudo ./install-exagear.sh
6. Ждем успешного окончания установки, после копируем с заменой файл из второго архива атачей в директорию куда установился Exagear:
ПРОЦЕССОРЫ ARM vs x86: ОБЪЯСНЯЕМ
/opt/exagear/bin/
7. Теперь запускаем в консоле Exagear:
service exagear start exagear
8. Что б убедится что мы находимся в среде x86, вводим команду в терминале:
arсh
9. Ставим Wine:
apt install wine
10. Ждем окончания установки.
Теперь у нас всё настроено для запуска x86 приложений, просто копируем наш exe файл на устройство и запускаем его командой в терминале:
wine имя_файла.exe
Вложения
pk-000000003618.zip
174 байт · Просмотры: 2 136
ubt_x32a32_al.zip
530,9 КБ · Просмотры: 2 186
Screenshot_20180904-143829.png
140 КБ · Просмотры: 1 468
Screenshot_20180904-143829.png
13,3 КБ · Просмотры: 894
flesh91
Active member · 25
Green Team
slepers
Green Team
09.12.2016 35 10
Exagear гораздо интересней тем, что позволяет запускать 86 приложения win на андройде и без нетхантер и wine. Но тема достаточно не простая, с костылями. Кому интересно на 4pda есть ветка по exagear.
flesh91
Green Team
25.02.2017 35 51
Exagear гораздо интересней тем, что позволяет запускать 86 приложения win на андройде и без нетхантер и wine. Но тема достаточно не простая, с костылями. Кому интересно на 4pda есть ветка по exagear.
В любом случае если даже использовать
Ссылка скрыта от гостей
, Exagear использует wine, просто он там уже предустановлен. Впринципи согласен с тобой, если пользователю именно нужно запускать EXE приложения на андроид, то ему будет прощё пользуваться APK версией. У меня просто была другая цель — завести полноценный експлоит doublepulsar которий требует wine, под nethunter.
Windows на ARM — НА ЧТО СПОСОБЕН?
slepers
Green Team
09.12.2016 35 10
В любом случае если даже использовать
Ссылка скрыта от гостей
, Exagear использует wine, просто он там уже предустановлен. Впринципи согласен с тобой, если пользователю именно нужно запускать EXE приложения на андроид, то ему будет прощё пользуваться APK версией. У меня просто была другая цель — завести полноценный експлоит doublepulsar которий требует wine, под nethunter.
Мммм, а не проще тогда задействовать термакс?
Под него есть хорошие репы, да и по отдельности инструменты присутствуют. Думаю скоро выделю время и черкану здесь статью по ним. А то termux инструмент хороший, а информации здесь по нему не густо.
flesh91
Green Team
25.02.2017 35 51
Мммм, а не проще тогда задействовать термакс?
Под него есть хорошие репы, да и по отдельности инструменты присутствуют. Думаю скоро выделю время и черкану здесь статью по ним. А то termux инструмент хороший, а информации здесь по нему не густо.
В термуксе не получиться завести полноценный експлоит doublepulsar который требует wine, для успешной отработки.
slepers
Green Team
09.12.2016 35 10
В термуксе не получиться завести полноценный експлоит doublepulsar который требует wine, для успешной отработки.
тоже верно..
кстати, у меня на termux стоит debian, надо будет позже попробовать wine на него установить.
rdh_x
Green Team
26.03.2018 63 5
Package realpath is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or is only available from another source However the following packages replace it: manpages-pl E: Package ‘realpath’ has no installation candidate ┌─[✗]─[[email protected]]─[~] └──╼ #apt install manpages-pl Reading package lists. Done Building dependency tree Reading state information. Done manpages-pl is already the newest version (1:0.7-1). 0 upgraded, 0 newly installed, 0 to remove and 16 not upgraded.
Хелпаните, что не так? Как исправить?
sk3l
Green Team
27.04.2017 42 6
Package realpath is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or is only available from another source However the following packages replace it: manpages-pl E: Package ‘realpath’ has no installation candidate ┌─[✗]─[[email protected]]─[~] └──╼ #apt install manpages-pl Reading package lists. Done Building dependency tree Reading state information. Done manpages-pl is already the newest version (1:0.7-1). 0 upgraded, 0 newly installed, 0 to remove and 16 not upgraded.
Хелпаните, что не так? Как исправить?
rdh_x
Green Team
26.03.2018 63 5
/etc/apt/sources.list
На гите я смотрел эту тему, coreutils у меня уже был установлен.
Layl2018
Также проблема arm8
TechHuk
Green Team
22.01.2017 15 2
Package realpath is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or is only available from another source However the following packages replace it: manpages-pl E: Package ‘realpath’ has no installation candidate ┌─[✗]─[[email protected]]─[~] └──╼ #apt install manpages-pl Reading package lists. Done Building dependency tree Reading state information. Done manpages-pl is already the newest version (1:0.7-1). 0 upgraded, 0 newly installed, 0 to remove and 16 not upgraded.
Хелпаните, что не так? Как исправить?
Я сделал так:
1. Исправил в конфиге realpath на manpages.pl
2. wget
Ссылка скрыта от гостей
sudo dpkg -i realpath_*.deb
3. :# bash install-exagear.sh
Завелось
rdh_x
Green Team
26.03.2018 63 5
Я сделал так:
1. Исправил в конфиге realpath на manpages.pl
2. wget
Ссылка скрыта от гостей
sudo dpkg -i realpath_*.deb
3. :# bash install-exagear.sh
Завелось
С realpath все решилось, но возникла проблема с alsa-base:
Package alsa-base is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or is only available from another source E: Package ‘alsa-base’ has no installation candidate
UPD:
Погуглил, добавил в /etc/apt/sources.list deb http://ftp.de.debian.org/debian jessie main , пошла установка, но произошла ошибка активации
Activating the copy of ExaGear. actool: Activation failed.
Последнее редактирование: 02.10.2018
TechHuk
Green Team
22.01.2017 15 2
С realpath все решилось, но возникла проблема с alsa-base:
Package alsa-base is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or is only available from another source E: Package ‘alsa-base’ has no installation candidate
UPD:
Погуглил, добавил в /etc/apt/sources.list deb http://ftp.de.debian.org/debian jessie main , пошла установка, но произошла ошибка активации
Activating the copy of ExaGear. actool: Activation failed.
Дальше все по инструкции, распаковать второй архив из аттачей ubt_x32a32_al.zip с заменой файла в папку /opt/exagear/bin
дать ему права :# chmod 777 ubt_x32a32_al
Запустить командой
service exagear start
exagear
И собственно попадаем в среду архитектуры i686
rdh_x
Green Team
26.03.2018 63 5
Дальше все по инструкции, распаковать второй архив из аттачей ubt_x32a32_al.zip с заменой файла в папку /opt/exagear/bin
дать ему права :# chmod 777 ubt_x32a32_al
Запустить командой
service exagear start
exagear
И собственно попадаем в среду архитектуры i686
┌─[[email protected]]─[/opt/exagear/bin] └──╼ #unzip /root/Downloads/ubt_x32a32_al.zip Archive: /root/Downloads/ubt_x32a32_al.zip replace ubt_x32a32_al? [y]es, [n]o, [A]ll, [N]one, [r]ename: y inflating: ubt_x32a32_al ┌─[[email protected]]─[/opt/exagear/bin] └──╼ #chmod 777 ubt_x32a32_al ┌─[[email protected]]─[/opt/exagear/bin] └──╼ #service exagear start ┌─[[email protected]]─[/opt/exagear/bin] └──╼ #exagear /usr/bin/exagear: line 135: 1924 Segmentation fault $ubt —path-prefix $image_dir —vpaths-list $vpaths_list — /bin/echo «Starting $command $args in the guest image $image_dir» Failed to start Exagear. Please check that file /opt/exagear/bin/ubt_x32a32_al exists and has executable permission /usr/bin/exagear: line 137: 1925 Segmentation fault /opt/exagear/bin/ubt_x32a32_al —path-prefix /opt/exagear/images/ubuntu-1404lts —vpaths-list /opt/exagear/images/ubuntu-1404lts/.exagear/vpaths-list —opaths-list /opt/exagear/images/ubuntu-1404lts/.exagear/opaths-list —use-binfmt_misc — /bin/bash
Источник: codeby.net
Принцип работы эмуляции x86 на архитектуре ARM
Эмуляция для приложений x86 обеспечивает широкие возможности экосистемы приложений Win32 в Arm. Это обеспечивает для пользователей уникальную возможность работать с существующим приложением x86 win32, не внося никаких изменений. Приложение даже не знает, что оно работает на компьютере с Windows на arm, если только оно не вызывает определенные API (IsWoW64Process2).
Уровень WOW64 в Windows позволяет запускать код x86 на платформе Arm64 версии Windows. Эмуляция x86 работает путем компиляции блоков инструкций x86 в инструкции Arm64 с оптимизацией для повышения производительности. Служба кэширует эти переведенные блоки кода, чтобы уменьшить издержки на перевод инструкций и обеспечить возможность оптимизации при следующем запуске кода. Кэши создаются для каждого модуля, чтобы другие приложения могли использовать их при первом запуске.
Источник: learn.microsoft.com
Можно ли запускать программы написание под x86 архитектура, — на arm процессоре?
У меня есть в распоряжении arm процессор(Raspberry Pi), — я нашел программу которая написанная под x86 архитектуру, — у меня вопрос, — можно ли запустить эту программу на arm процессоре? Дайте ответ или какую нибудь наводку по теме
- Вопрос задан более трёх лет назад
- 3522 просмотра
Комментировать
Решения вопроса 3
В чистом виде — нет, запустить — нельзя. Команды процессора другие. Возможно через какой то эмулятор — можно. Ну или перекомпилировать исполняемый файл под arm.
Ответ написан более трёх лет назад
По коду ничего не могу сказать. По компиляции — тут еще важна операционка, на которой бинарник будет исполняться. Вам надо на профильный форму по малине — там намного полнее подскажут.
Источник: qna.habr.com