Як створити 32-бітний префікс WINE?


Відповіді:


148

Щоб створити 32-бітний префікс WINE в 64-бітній системі Ubuntu, потрібно відкрити термінал і виконати таку команду:

WINEPREFIX="$HOME/prefix32" WINEARCH=win32 wine wineboot
  • Де WINEPREFIXзнаходиться каталог префікса
  • Цей каталог вже не повинен існувати, інакше ви отримаєте помилку! Будь ласка, не створюйте його вручну в Nautilus або за допомогою mkdir ./

Дякую! Я боровся з цим вже тиждень :(, повідомлення може бути більш конкретним ..
Водолій Сила

Ви можете користуватися подвійними цитатами скрізь, немає необхідності в одинарних цитатах :)
Smile4ever

1
Коли я виконую цю команду, Вино просить абсолютний шлях ( /home/username/prefix32а не~/prefix32
ши

@shea редагував ОП відповідно
Шельваку

1
Крім того, ви можете повністю опустити цитати.
Smile4ever

48

Ось як я це зробив. Наведена відповідь - для мене - не спрацювала.

Спочатку я видалив папку Wine за допомогою цієї команди:

rm -r ~/.wine

Якщо вам сказано, що каталог не порожній, просто додайте -fпрапор (force). Зауважте, що це видалить усі програми Windows, встановлені в цьому префіксі!

Ваша команда повинна виглядати приблизно так:

rm -r -f ~/.wine

А потім створіть 32-бітний префікс за допомогою цієї команди:

WINEARCH=win32 WINEPREFIX=~/.wine wine wineboot

20
По-перше, вам не слід було писати судо спереду. Також це видалить весь віртуальний диск Windows.
Шельваку

8
Це неправильна відповідь, оскільки ви видаляєте 64-бітну версію. Вам просто потрібно створити ще один PREFIX, щоб мати їх обох.
Олександр Кім

7
Там, де ви написали "написати sudo спереду", правильне рішення - додати -f, як у rm -rf ~/.wine. Додавання судо нічого не призведе. Крім того, WINEPREFIX=~/.wineце зайве, оскільки це місце за замовчуванням.
Брендан Лонг

1
Чому б просто не створити .wine32натомість каталог?
Mateen Ulhaq

@Levan, як же це не працювало для тебе? Ваша команда видаляє весь існуючий каталог вина, коли все, що вам потрібно було зробити, це створити окремий префікс wine32 - не потрібно видаляти існуючий.
numbermaniac

13

Просто створити wine32префікс / каталог (без wine64префікса / каталогу) не вийде. Як було запропоновано вище (але не повністю виписано) - і якщо ви хочете уникнути необхідності використовувати winecfg (що викликає автоматизацію - вам потрібно якось його закрити), ось повне рішення: створіть wine64, потім wine32каталог . Якщо ви використовуєте winetricksдля перевірки (він дає попередження для wine64каталогів), він буде повідомляти і те, і інше правильно ( wine64подає попередження, оскільки це 64, wine32 - ні, оскільки 32). Рішення;

rm -Rf ./wine   # carefull, this deletes your entire wine config (fine if you want to start afresh)

WINEPREFIX=~/.wine wineboot

... зачекайте ...

WINEPREFIX=~/.wine32 WINEARCH=win32 wineboot

Після цього ви можете:

WINEPREFIX=~/.wine32 WINEARCH=win32 your_32bit_executable.exe

WINEPREFIX=~/.wine WINEARCH= your_64bit_executable.exe   # likely, did not test.

Схоже, на моєму Ubuntu Trusty 14.04 мені не потрібно було видаляти ./wineпапку amd64 (win64) . У мене було три програми, які були встановлені раніше, і вони продовжували працювати. Я створив лише специфічний каталог win32. ./wine32Далі я встановив .NET 4.0 з командою, $ WINEPREFIX=~/.wine32 winetricks dotnet40і вона працювала бездоганно.
Антоніо

1

Я зіткнувся з тим же питанням.

Тип WINEARCH=win32 WINEPREFIX=~/.wine winecfg

Слід почати завантажувати необхідні драйвери. Я вважаю, що ця проблема пов’язана з проблемою, яка виникає під час звичайного завантаження. Для мене мій Інтернет впав, оскільки він спочатку завантажував драйвери.


11
Вам ніколи не потрібно запускати вино як корінь!
user877329

0

Перевірте, чи вже у вас активовано багатоархів:

dpkg --print-foreign-architectures | grep -q i386 && sudo dpkg --add-architecture i386

Потім встановіть wine32:

sudo apt-get update && sudo apt-get install wine32

І нарешті, не видаляйте 64-бітну установку вина. просто перейменуйте його на .wine64, тоді створіть нову папку .wine для своїх 32-бітних додатків:

mv ~/.wine ~/.wine64 && WINEARCH=win32 wineboot


0

Після видалення .wine32 для мене працювала .NET 4.0 з командою $ WINEPREFIX = ~ / .wine32 winetricks dotnet40.

кудо Антоніо


-2

WINEPREFIX = "$ HOME / prefix32" WINEARCH = win32 [Тут команда, яка дає вам помилку префікса вина]

  • Не використовуйте дужки []. Цей метод вирішив мою проблему.

2
Дякую за вашу відповідь, але це ідентично прийнятої. Подумайте про її видалення.
користувач3140225
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.