LINUX.ORG.RU

FreeBSD: wine-i386 и wine на одной машине

 , ,


0

1

Привет.

Хочу играть в World of Warcraft на FreeBSD. Скачал инсталлер батлнет клиента(для запуска их игр), оказалось, что он 32битный, установил вайн386. Установил батлнет клиент успешно. Пытаюсь из него установить игру - их же клиент пишет: для игры надо окружение х64. Установить оба одновременно нельзя, исходя из статьи на вики. Штатными пакетами нельзя вернее. Предлагают либо самому собирать из исходников(не портов) либо поднимать джеил и в нем вайн ставить. Но я не донца понимаю что из это предпочтительнее, как по мне так я бы джеил поднял, чтобы самом ничего не собирать и мусор не тянуть в систему. Правда не до конца понятно как мне клиент их запускать на джеиле, ведь она гуишная.

Заранее спасибо за любые советы.



Последнее исправление: Keltir (всего исправлений: 1)
Ответ на: комментарий от annerleen

какие есть варианты (или будут в обозримом будущем) запускать win32 приложения на 64-битной системе, не засирая её мультилибом?

Flatpak, либо какой-нибудь другой контейнер. Я вот недавно сделал Conty специально для этого, внутри него есть Wine и все его зависимости, в том числе и 32-битные. Попробуй, если будет желание. Тем более, что у тебя видеокарта от AMD (правильно?), так что без проблем должно работать. Использовать примерно так:

chmod +x conty_lite.sh
./conty_lite.sh wine Battle.net.exe

Можно на полностью 64-битной системе запускать 32-битные приложения через него, игры тоже.

Там внутри и Steam, и Lutris есть, если нужно.

это не в ту сторону? в NTDLL добавлены новые преобразователи (thunk) 32-разрядных системных вызовов в 64-разрядные;

Я бы предположил, что это шаг в ту сторону. Но пока что сложно сказать, так как они не пишут, с какой целью они делают эти изменения, может это просто каким-то приложениям нужно. Хотя, может быть, где-то в списке рассылки есть подробная информация об этом.

Kron4ek ★★★★★
()
Последнее исправление: Kron4ek (всего исправлений: 2)
Ответ на: комментарий от Kron4ek

Тем более, что у тебя видеокарта от AMD (правильно?),

Intel в данном случае, но мне 3D вообще не нужно, главное чтобы ланчер запустился и ВоВ обновился.

annerleen ★★★★☆
()
Ответ на: комментарий от annerleen

Intel тоже нормально, главное, что не Nvidia с проприетарным драйвером - с ним проблемы могут быть.

А Battle.Net я через него попробовал запустить - работает. Игру тоже должен смочь обновить.

Только имей в виду, что будет стандартный префикс Wine использоваться (~/.wine), если ты не укажешь другой через переменную WINEPREFIX.

Kron4ek ★★★★★
()
Последнее исправление: Kron4ek (всего исправлений: 3)
Ответ на: комментарий от Kron4ek

Крончек, помоги, запустить не могу.

$ ./conty_lite.sh wine setup.exe
./conty_lite.sh: строка 23: md5sum: команда не найдена
Please install fuse2 or fuse3 and run the script again.

Версии пробовал Conty 1.16, Conty 1.15.1 и Conty 1.11.1

Установлено fuse-1.6.0 . Пробовал ставить fusefs-libs3 . Где взять это fuse3?

anonymous
()
Ответ на: комментарий от Kron4ek

Да, на freebsd пытаюсь. Понял, спасибо.

anonymous
()
Ответ на: комментарий от Kron4ek

попробовал запустить conty_lite, не запускается вообще ни одно приложение, даже с чистым префиксом и даже winecfg

wineserver: ../wine-mirror-git/server/async.c:427: async_set_result: Assertion `async->terminated' failed.
013c:err:ntdll:RtlpWaitForCriticalSection section 026E02EC "?" wait timed out in thread 013c, blocked by 0138, retrying (60 sec)
01d0:err:ntdll:RtlpWaitForCriticalSection section 02700BEC "?" wait timed out in thread 01d0, blocked by 0178, retrying (60 sec)


в чём может быть проблема?
алсо:

libgcc_s.so.1 must be installed for pthread_cancel to work
0090:err:seh:call_stack_handlers invalid frame 000000000062F370 (0000000000412000-0000000000610000)
0090:err:seh:NtRaiseException Exception frame is not in stack limits => unable to dispatch exception.
wine client error:90: write: Bad file descriptor
libgcc_s.so.1 must be installed for pthread_cancel to work
0090:err:seh:call_stack_handlers invalid frame 000000000062F370 (0000000000412000-0000000000610000)
0090:err:seh:NtRaiseException Exception frame is not in stack limits => unable to dispatch exception.
wine client error:90: write: Bad file descriptor

annerleen ★★★★☆
()
Последнее исправление: annerleen (всего исправлений: 1)
Ответ на: комментарий от annerleen

Судя по выводу, похоже на этот баг, он исправлен в Wine 6.17, но внутри Conty пока что версия 6.16. И видимо не на всех системах проявляется, так как у себя не могу воспроизвести.

Попробуй Wine 6.17. Например:

wget https://github.com/Kron4ek/Wine-Builds/releases/download/6.17/wine-6.17-staging-amd64.tar.xz
tar xf wine-6.17-staging-amd64.tar.xz
./conty_lite.sh wine-6.17-staging-amd64/bin/winecfg

Либо ты можешь попробовать более старую версию Conty, в которой более старый Wine, без этого бага.

Kron4ek ★★★★★
()
Последнее исправление: Kron4ek (всего исправлений: 1)
Ответ на: комментарий от Kron4ek

вроде работает с чистым префиксом, но мне не нравится то, что conty после себя не закрывает процессы и они висят висяком

annerleen ★★★★☆
()
Ответ на: комментарий от annerleen

Ты имеешь в виду если через Ctrl+C его закрыть или через kill? Да, это нерешенная проблема пока.

Можешь попробовать параметры запуска --unshare-pid --die-with-parent, это может решить проблему, но и свои неприятные эффекты у этого есть.

Kron4ek ★★★★★
()
Последнее исправление: Kron4ek (всего исправлений: 3)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.