Как установить 32-битную Wine на 64-битную Ubuntu?

29

В настоящее время я использую Ubuntu 11.10 64 Bit на своем ноутбуке и хочу установить некоторые программы Windows с Wine (Dreamweaver CS5 / Starcraft II и т. Д.), Но для работы этих программ требуется 32-битная версия Wine, даже если она находится в 64-битной среде ... Я являюсь пользователем Fedora большую часть времени, и в этом дистрибутиве установка 32-битных версий приложений внутри 64-битной системы никогда не была проблемой, но я не нашел способа сделать это в Ubuntu.

Мануэль Эскудеро
источник

Ответы:

28

Все изменилось несколько раз с момента моего первоначального ответа. 64-битные префиксные версии Wine в наши дни вполне способны. У меня не было чистой 32-битной версии по крайней мере несколько лет.

Ваш «Wine prefix» (традиционно в ~/.wine/, но настраивается через env WINEPREFIX) контролирует, как все будет работать в течение всего срока жизни этого префикса. Если вы установите 32-битный префикс, все будет работать в 32-битном режиме с этим префиксом. И наоборот, если вы ничего не делаете и не запускаете ничего особенного, вы создадите среду Wine64.

Если вы запускаете новый префикс (то есть в новой установке Ubuntu), вам нужно будет сделать несколько специальных вещей:

# Move the old prefix (if one exists)
# You could rm -rf it if you don't want it.
mv ~/.wine/ ~/oldwine/

# Create prefix with right arch, per
# http://wiki.winehq.org/FAQ#32_bit_wineprefix
WINEARCH=win32 winecfg

Вот и все. Если вы не укажете другой префикс, который еще не существует, вам не нужно устанавливать его WINEARCHзаново.

История изменений к этому ответу содержит дополнительную информацию, которая, как я думаю, не актуальна в 2018 году. Это в основном точка и стрельба в наши дни.

Оли
источник
Исправлена ​​проблема: установил Wine 1.2 через PlayOnLinux, а затем запустил приложения, которые не запускаются через терминал, посмотрел вывод. В случае с Dreamweaver речь шла об установке «vcrun2008» с помощью winetricks. Теперь все работает хорошо, спасибо!
Мануэль Эскудеро
Это кажется неполным. Я получаю wine: invalid directory prefix32 in WINEPREFIX: not an absolute path.
Сёрен
22

Шаг 1: Установите Wine 1.4. Эта версия Wine поддерживает win32 и win64.

Шаг 2: Откройте терминал.

Шаг 3: export WINEPREFIX=prefix32

Шаг 4: export WINEARCH=win32

Шаг 5: winecfg

Шаг 6: наслаждайтесь, новый префикс установлен для 32-битного исполнения.

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

Приправы
источник
Шаги 3 и 4 решают многие проблемы с вином и производительностью в нескольких играх. Это необходимо при установке Wine на 64-битную ОС.
Луис Альварадо
4
@Relish Я пытался выполнить эти команды. Я получаю сообщение об ошибке: wine: неверный префикс каталога 32 в WINEPREFIX: не абсолютный путь
shravan
1
Возвращает winecfg: похоже, что wine32 отсутствует, его следует установить.
17
@shravan Вы прочитали сообщение об ошибке? Проблема в том, что ваш путь к WINEPREFIX не является абсолютным.
Смак
1
Это не работаетwine: invalid directory prefix32 in WINEPREFIX: not an absolute path
Sören
4

Лучшие способы сделать это:

  1. (Постоянно) Править /etc/environment:

    • sudo nano /etc/environment

    • Добавьте следующую строку:

      WINEARCH=win32

    Примечание: согласно вышеупомянутому решению wine & wibom всегда используют 32-битную версию вина.

  2. (Временно) Откройте терминал ( Ctrl-Alt-t) и введите:

    • `env WINEARCH = win32 wine или
    • `env WINEARCH = win32 winecfg для 1-й бутылки вина.
paschalis.sp
источник
2

В Ubuntu Oneiric 32-разрядные двоичные файлы и библиотеки Wine устанавливаются по умолчанию. Никаких специальных действий не требуется, кроме установки wine.

Подтверждено с:

$ file `which wine`
/usr/bin/wine: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.15, stripped
Lekensteyn
источник
1
Больше не действует с последними версиями Ubuntu
mablae
В самом деле, это не является действительным подтверждением. Когда я использую, winetricks -q dotnet30я получаюYou are using a 64-bit WINEPREFIX. If you encounter problems, please retest in a clean 32-bit WINEPREFIX before reporting a bug.
Sören
2

, Была такая же проблема. Я только что обновился до Ubuntu 14.04 64-bit и пытался заставить Office 2007 работать. Он не будет работать в 64-битной конфигурации вина. После долгих поисков вот что я наткнулся:

  • Папка, в которую установлено все ваше программное обеспечение Wine, называется WINEPREFIX. По умолчанию эта папка находится в вашей домашней (~) директории с именем .wine. Может быть более одного WINEPREFIX.
  • Также существует переменная окружения, известная как WINEARCH, которая представляет режим ваших текущих настроек Wine, то есть 64-битный или 32-битный.
  • ЭТО ВАЖНО. Во время создания WINEPREFIX значение WINEARCH определяет режим, в котором будет работать wine при запуске приложений из этого WINEPREFIX.

По умолчанию для переменной WINEARCH установлено значение 'win64' (расшифровывается как 64-битная) в 64-битной установке Ubuntu, поэтому автоматически созданный WINEPREFIX имеет 64-битный режим работы. Чтобы изменить этот режим, нам нужно: 1) удалить текущий WINEPREFIX. 2) установите WINEARCH на 'win32' 3) создайте новый WINEPREFIX. Шаги: ПРИМЕЧАНИЕ. Эти шаги необходимо выполнить после установки Wine. Вы можете легко сделать это, используя Ubuntu Software Center. найдите Wine 1.6 и нажмите «Установить».

  1) Open up the terminal by pressing Ctrl + Alt + T. And type the following commands:
   cd ~
   rm -rf .wine
   rm -f .config/menus/applications-merged/wine*
   rm -rf .local/share/applications/wine
   rm -f .local/share/desktop-directories/wine*
   rm -f .local/share/icons/????_*.xpm 

   2) Now to set your enviroment variable and also to create your new 32-bit WINEPREFIX go ahead and type:
   WINEARCH=win32 WINEPREFIX=~/.wine winecfg

Вот и все, я думаю! Это сработало для меня! Теперь все, что вам нужно сделать, это установить 32-битные приложения.

Свободная Газа
источник
Я обнаружил, что это решение выше работает для Ubuntu 16.10, другие решения дают сбой winecfg wine: invalid directory prefix32 in WINEPREFIX: not an absolute path Aborted .
Светлана Белкин