Как добавить dll в wine

Обновлено: 07.07.2024

Для запуска приложений, которые изначально разработаны для ОС Windows, пользователи Linux используют Wine. Если переводить дословно, то Wine - это НЕ эмулятор Windows, это альтернативный API. Для запуска большинства программного обеспечения Windows чистого Wine не хватает, нужны дополнительные шрифты или библиотеки.

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

Облегчить работу по установке всего этого может скрипт Winetricks, с помощью которого установка дополнительных библиотек и шрифтов к Wine становится очень простой.

Возможности скрипта Winetricks

Скрипт Winetricks упрощает установку некоторых приложений и библиотек Windows, которые нужны для корректной работы различных приложений и игр (здесь имеется ввиду не игровые электромобили для детей, а компьютерные игры), запускаемые посредством Wine. С помощью скрипта Winetricks можно установить приложения и библиотеки, перечисленные ниже в таблице под спойлером.

Использование скрипта Winetricks

Чтобы установить пакет с помощью скрипта Winetricks нужно:

  1. Установить пакет cabextract. Установить этот пакет можно командой:

Скрипт Winetricks или доводим Wine до ума

Где можно выбрать нужный пакет, доступный в Winetricks, для установки:

Либо вручную установить, выбранный пакет, с помощью скрипта Winetricks:

Если, к примеру, библиотека DirectX 9 уже имеется загруженная, то можно подложить ее в кэш Winetricks. Для этого создаем директорию, если она еще не создана: и помещаем в нее EXE-файл с графической библиотекой DirectX 9.

Кто-нибудь MailAgent запустил на Wine? Отпишитесь плиз!

Перезагрузите компьютер и от имени пользователя выполните:
sh winetricks

Если честно, то я не знаю с чем связанна эта проблема. Попробуйте установить пакет zenity, отвечающий за отрисовку окошек скрипта winetricks:
sudo apt-get install zenity

$ sh winetricks
winetricks: 3717: cannot create /home/ostap/.wine/dosdevices/c:/winetrickstmp/zenity.sh: Permission denied
winetricks: 3717: cannot create /home/ostap/.wine/dosdevices/c:/winetrickstmp/zenity.sh: Permission denied
sh: Can’t open /home/ostap/.wine/dosdevices/c:/winetrickstmp/zenity.sh
Как мне быть?

Поправь права для папки /home/ostap/.wine/dosdevices/c:/winetrickstmp. Видать у тебя там права только для root`а

короче поставил этот скрипт попытался установить все сразу теперь wine вообще не запускает приложения никакие он там ошибку какуето выдал но не помню какую при установке.что делать?хелп

kubmob: короче поставил этот скрипт попытался установить все сразу теперь wine вообще не запускает приложения никакие он там ошибку какуето выдал но не помню какую при установке.что делать?хелп

А как удалить установленный пакет, например я установил d3dx9 как мне его удалить?

Радик: А как удалить установленный пакет, например я установил d3dx9 как мне его удалить?

Под рукой нет этого скрипта, но я думаю либо вручную, либо сниманием галочки напротив DirectX

Спасибо. Все работает.

Как установить? у меня не получается

Валера: Как установить? у меня не получается

Только что поставил по инструкции, все получилось

А кто-нибудь запускал на wine lineage ,aion и другие серьёзные игры поделитесь опытом.

И что с этим делать?

valeri: А кто-нибудь запускал на wine lineage ,aion и другие серьёзные игры поделитесь опытом.

Если считать, что это серьезные игры, то лично я видел как работали Linage2 и WOW на Ubuntu. Шли через Wine конечно же

Это говорит о том, что у Вас используется 64-битная ОС.
Попробуйте:
export WINEARCH =wine32 && sh winetricks directx9

Автору спасибо!Отличный скрипт!

Что это? у меня та же фигня

При выполнение sh winetricks пишет в консоли. Mandriva 2010.2

koshar: Что это? у меня та же фигня

sonic-speed: При выполнение sh winetricks пишет в консоли. Mandriva 2010.2
[sonic-speed@localhost

Возможно это временно.

Купил ноутбук при первом включении доходит до root@localhost и все. Что мне нужно делать? или установить систему?

Это ошибка DNS -имени. Почему-то скрипт не может из ссылки сделать IP-адрес.

хочу запустить под wine виндовый the KMplayer. В инете нашёл, что для него нужен flash. пробовал так как сказанов статье, но файл скачивается и всё, дальше отказывается устанавливаться. КАК БЫТЬ -ТО

Forumser: хочу запустить под wine виндовый the KMplayer. В инете нашёл, что для него нужен flash. пробовал так как сказанов статье, но файл скачивается и всё, дальше отказывается устанавливаться. КАК БЫТЬ -ТО

Можно поподробнее рассказать, что пишет в качестве ошибки?

wineserver not found!
Переустанавливал все, ничего не помогает. Как лечить?
Система Debian Squeezee 2.3.02.

andrews: wineserver not found!
Переустанавливал все, ничего не помогает. Как лечить?
Система Debian Squeezee 2.3.02.

image

Всем привет!
Прочел статью про «Все тонкости настройки Wine», оказалось, что там далеко не все тонкости. Поэтому написал этот пост как дополнение тому.

В данном посте в основном вольный перевод оф. документации, а так же несколько своих и чужих хитростей при работе с вайн.
Скорее всего данный пост будет интересен новичкам и обычным пользователям GNU\Linux. Тем не менее добротные советы от специалистов не будут лишними.

Что такое вайн думаю объяснять нет смысла. Хочу лишь показать несколько трюков при работе с ним.

Префиксы

С их помощью вы можете устанавливать приложения именно туда куда вы их хотите установить, а не в дефолтный .wine. Даже если что то пойдет не так, достаточно удалить тот префикс, в котором произошла ошибка, при этом все другие приложения\префиксы (предположим, что они настроенные) не пострадают.

То есть каждый созданный вами префикс можно рассматривать как отдельный wine – он независим от других префиксов. Или, для еще большей простоты, воспринимайте каждый созданный префикс, как отдельно установленную винду.

Теперь немного практики:
Сейчас мы создадим папку Gamez, в ней мы создадим префикс lib в который установим несколько библиотек. Эти библиотеки все равно пригодятся потом, поэтому пусть кешируются.

mkdir ./Gamez
env WINEPREFIX=$HOME/Gamez/lib wine winecfg
env WINEPREFIX=$HOME/Gamez/lib winetricks directx9 vcrun2005 vcrun2008 vcrun6
env WINEPREFIX=$HOME/Gamez/lib wine winecfg

Последней командой мы опять вызвали окно конфигуратора wine. Просто перейдите на вкладку «Библиотеки» и убедитесь, что все установилось. После этого выполните:

wine winecfg — откроется конфигуратор wine (не из префикса), проверьте ту же вкладку. Видите! Здесь никаких библиотек. Значит он цел и невредим.

Как установить несколько разных версий wine?

Для решения этой задачи придется собирать wine из исходников. При сборке просто используем префикс для дефолтной установке. Примерно как здесь:

./configure prefix=/path/to/install/directory && make
sudo make install

AppDB

Обязательно используйте appdb для поиска информации по установке приложения, возможно стаф, который вы устанавливаете, уже установили и расписали все подводные камни.

Наводим порядок в домашнем каталоге

Если вы любите поиграть, то вероятно ваш /home раздел забит сейвами и прочими файлами игр. Избавиться от этого всего дела, не в ущерб можно так:

image

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

Использование последних версий wine

Wine такая штука, чем новее тем лучше! С помощью следующей команды вы всегда будете иметь последнею версию wine (для Ubuntu-подобных дистрибутивов):

sudo add-apt-repository ppa:ubuntu-wine/ppa
sudo apt-get update

После выполнения этих команд ищите последнею версию wine в synaptic.

Установка winetricks

Если по каким-либо причинам у вас до сих пор нет winetricks, то завести его в хозяйстве можно так:

Как установить MSI файл?

Это можно сделать двумя способами: wine msiexec /i whatever.msi

Альтернативный способ: wine start whatever.msi

The file foo.exe is not marked as executable… — Что это значит?

chmod a+x ./patch/you/exe.file

если же файл находится на диске, то должна помочь вот эта команда:

mount -o remount,mode=0777,exec /media/cdrom

Как вывести содержимое отладки в отдельный файл?

/.wine/drive_c/Games/Tron
wine tron.exe &> log.txt

Как отключить «crash» диалог?

Если вы используете префиксы, не забудьте в команде указать путь к префиксу — winetricks nocrashdialog

После запуска приложения\игры, wine ругается и ничего не запускает. Что делать?

Для начала изучите логи, обычно в них все написано. Ниже я приведу самые популярные ошибки:

MFC40.DLL : через winetricks установи mfc40 (Microsoft Foundation Classes from Visual C++ 4).
MFC42.DLL, MSVCP60.DLL : через winetricks установи vcrun6 (MS Visual C++ 6 sp4 libraries: mfc42, msvcp60, msvcrt).
MFC71.DLL, MSVCP71.DLL : через winetricks установи vcrun2003 (MS Visual C++ 2003 libraries: mfc71,msvcp71,msvcr71).
MFC80.DLL, MSVCP80.DLL : через winetricks установи vcrun2005 (MS Visual C++ 2005 libraries: mfc80,msvcp80,msvcr80).
MFC90.DLL, MSVCP90.DLL : через winetricks установи vcrun2008 (MS Visual C++ 2008 libraries: mfc90,msvcp90,msvcr90).
MDAC : через winetricks установи mdac27 (MS MDAC 2.7).

Мое приложение работает, но текстовые поля ведут себя странно

Проанализируйте дебаг wine после запуска приложения, если видите что ругается на RICHED20.DLL, то доустановите через winetricks следующею библиотеку: riched20

Вы можете просто их игнорировать, это информация для разработчиков.

Через вайнтрикс можно установить 1 или 2 фреймворк. Как альтернатива использовать mono. Если же приложение требует 3 или 4 фреймворк, то скорее всего оно работать не будет (хотя 3 и даже 3.5 доступен в меню winetricks). Ждем пока решат эту проблему.

Игра которую я пытаюсь установить защищена от распространения возможно ли её установить?

Смотри список copy protection, которые работают.

Что делать если приложение требует IE?

Wine использует по умолчанию ядро\движок Gecko – это то же, что и на Firefox. Поэтому можно через winetrikcs доустановить gecko(если его нет) и\или fakeie6.

Если же это не помогло, попробуйте поменять версию windows на win2k и установить через winetricks ie6, ie7 или ie8.

Как включить сглаживание шрифтов в wine?

Если ваша версия выше чем 1.1.12 вы можете использовать winetricks и выбрать один из трех вариантов сглаживания: fontsmooth-gray, fontsmooth-rgb или fontsmooth-bgr

После выхода из игры не восстанавливается разрешение экрана

Должно помочь: xrandr -s 0

Как попасть в реестр wine?

wine regedit — Если используются префиксы укажите путь в команде.

Нуждается ли wine в отдельной установке драйверов?

Нет. Wine – это не эмулятор компьютера, он лишь переводит вызовы Windows API в понятные линуксу команды.

Безопасно ли запускать wine от root?

Никогда не запускайте wine от root пользователя.

Если это уже случилось измените владельца


sudo chown -R $USER:$USER .wine

Техника безопасности при использовании wine

Вот несколько советов, которые помогут вам повысить безопасность:

  • Никогда не запускайте программы с подозрительных сайтов
  • Никогда не используйте root пользователя для запуска приложений!
  • Используйте антивирусный сканер для запускаемых приложений, например ClamAV. Или хотя бы проверяете экзешники на virustotal
  • Попробуйте удалить wine диск Z:, который указывает по умолчанию на корневой каталог. В качестве обходного пути запускать программы из

Файл .xsession-errors забивает мусором все дисковое пространство. Что делать? (рецепт от --=XliN=--)

/.xsession-errors &> /dev/null
[[ "$(stat -c %s

/.xsession-errors)" -ge "52428800" ]] && echo >

/.xsession-errors
done

Добавьте его в автозагрузку, и установите следующий пакет (он необходим для работы скрипта).
apt-get install inotify-tools

Настройка WINE

После того как вы установили последнюю версию среды для запуска Windows программ WINE (о том как это сделать написано здесь) его необходимо ещё и немного поднастроить, чтобы программы и игры запускались нормально. Иногда приходится производить для каждой программы собственные настройки, но есть и общие для всех программ действия. Однако первоначальная настройка WINE дело вовсе не сложное.

Использование Winetricks.

Установить его просто. Запустите эмулятор терминала и создайте в домашней директории папку например winetricks:

затем перейдите в эту папку и скачайте из интернета скрипт winetricks:

После того как скрипт скачался сделайте его испоняемым:

И наконец запускаем winetricks:

Установка шрифтов и DLL в Wine

Первым делом необходимо установить стандартные шрифты необходимые для большинства windows программ и игр. Для этого выбираем пункт Select Default prefix

При первом запуске этого пункта меню winetricks задаст вопрос о вашем согласии на сбор отладочной информации в целях улучшения программы:

winetricks debug

winetricks debug

Можете смело ответить нет, если не хотите помогать в развитии программы winetricks.

Далее выбираем пункт Install a font

Winetricks Установка библиотек

Winetricks Установка библиотек

Winetricks Установка шрифтов

Winetricks Установка шрифтов

Если вы не включили Silent Install то процесс загрузки и установки будет отображаться в окне:

Winetricks процесс установки

Winetricks процесс установки

Установка библиотек происходит аналогичным образом. Только на предыдущем шаге необходимо выбрать Install a Windows DLL o component.

Затем отметить необходимые компоненты и нажать кнопку ОК, как и в случае со шрифтами.

Winetricks установка DLL

Winetricks установка DLL

Настройка звука в Wine

Для большинства игр и лучше производительности я переключаю звук на использование ALSA. делается это в настройках Wine (Приложения\Wine\Настройка Wine или выполнить winecfg в терминале). На вкладке Audio установить флажок в пункте ALSA.

Настройка звука Wine

Настройка звука Wine

Кроме того я наблюдал значительные проблемы со звуком в приложениях запущенных под wine при установленном звуковом сервере PulseAudio. По умолчанию Ubuntu воспроизводит звук именно с его помощью, поэтому я его удаляю.

UPD 2016. В последних дистрибутивах необходимость в удалении Pulseaudio практически отпала. Все программы и игры работают корректно.

На этом первоначальная настройка WINE в Ubuntu завершена. Это всего-лишь базовый набор настроек которые я применяю для запуска Windows игр в ОС Linux под Wine. Если вам есть что дополнить добро пожаловать в комментарии.

Wine — свободное программное обеспечение, позволяющее пользователям ОС на базе ядра Linux исполнять 16-, 32- и 64- битные приложения созданные исключительно для Microsoft Windows. Название W.I.N.E. расшифровывается как «Wine Is Not an Emulator» — «W.I.N.E. — это не эмулятор». Имеется в виду, что Wine не является эмулятором компьютера или виртуальной машиной, как, например, qemu, VirtualBox и другие подобные им. Wine — это свободная реализация Windows API.
Смотрите видеоролик о работе с WINE в РЕД ОС на нашем официальном YouTube канале.

Для установки необходимо открыть терминал, войти под суперпользователем root и начать установку:
если вы используете РЕД ОС версии 7.1 или 7.2, выполните команду:

если вы используете РЕД ОС версии 7.3 и старше, выполните команду:

Все остальные действия, такие как, установка/удаление программ в wine, настройка префикса необходимо выполнять строго от обычного пользователя.
После установки запустите команду от имени обычного пользователя, чтобы увидеть конфигурацию Wine:


Eсли установщик программы запускается файлом с расширением .msi, используем команду:

Устанавливаются программы в ваш домашний каталог, в папку .wine (папка скрытая).

Чтобы запустить программу, необходимо указать полный путь к исполняемой программе или имени программы, как показано в примере ниже:

Первый запуск программы может длиться достаточно долгое время.

Для разных программ могут потребоваться разные дополнительные компоненты, разные настройки Wine и т. п. Для этого и существуют префиксы Wine. Используя для каждой программы свой префикс, Вы сможете обеспечить им индивидуальное окружение. Для того, чтобы задействовать эту возможность, выполняем команду от обычного пользователя :

Где example, например, может быть название программы, которая в этом префиксе будет располагаться. Будет создан новый префикс и откроется панель управления Wine. Здесь можно что-то настроить, можно ее просто закрыть.

Все дальнейшие команды выполняем добавляя:

Например, запуская установщик нужной программы, вводим:

С помощью механизма префиксов можно создать 32 битное окружение wine и запускать в нем программы. Некоторые компоненты Windows и программы работают только или стабильнее в 32 битном префиксе.

Создайте сам 32 битный префикс командой

Пример установки dotnet35sp1 в 32-битный префикс:

Для удаления программ необходимо войти под суперпользователем root и использовать команду


Для открытия реестра используется инструмент regedit:

для РЕД ОС версии 7.3 и старше:

ВАЖНО. Теперь winetricks готов к работе, все остальные операции с winetricks необходимо выполнять строго под обычным пользователeм .

Чтобы открыть диалоговое окно программы для работы в графическом режиме, необходимо вызвать команду:


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

Для установки пакета в графическом режиме необходимо запустить winetricks.

Запускать программу надо именно под тем пользователем, под которым у вас работает wine, иначе программа установится не туда, куда нужно. Права root не нужны.

При открытии окна выбрать пункт меню, установленный по умолчанию, затем необходимо выбрать пункт «Установить библиотеку DLL или компонент Windows». В списке приложений следует выбрать пакет для установки, в зависимости от того, какая версия необходима, и нажать «ОК».


Затем откроется окно установки программы, где необходимо изучить и принять условия лицензионного соглашения и следовать инструкциям по установке.


Для полуавтоматической установки (название и описания компонентов выводятся по ключу — help):

Пример установки NET Framework 4.5 :

В базовом варианте Mono состоит из нескольких компонентов:

Начиная с версии Mono 2.2 реализована поддержка классов компилятора Mono.CSharp.Evaluator (сборка Mono.Sharp.dll) для создания собственных сервисов компиляции.

Среда исполнения Mono поддерживает инфраструктуру промежуточного языка CLI (Common Language Infrastructure), соответствующую стандарту ECMA-335. Виртуальная машина среды исполнения допускает возможность запуска приложений и сборок, скомпилированных в других системах (например, возможно запускать в Linux без перекомпиляции приложения, созданные при помощи Microsoft Visual Studio для исполнения в Microsoft Windows).

Также, вместо использования виртуальной машины, среда исполнения может быть интегрирована в приложение с целью создания встраиваемой системы, не требующей установки Mono для запуска и обладающей высоким быстродействием. При этом, в приложение включаются только необходимые компоненты среды исполнения.

Данный пакет ставится автоматически при установке Wine из репозитория версии 4.4.

Gecko – это свободный движок вывода веб-страниц для браузера при работе в интернете wine. Если wine не работает с интернетом и вы не запускаете windows exe браузер, то вам Gecko не нужен.

Обычно при запуске приложения для работы с веб-страницами Wine автоматически ищет Gecko сперва в /usr/share/wine/gecko. Если Wine не находит архив с Gecko там, то оно автоматически загружает его из интернета, но некоторые приложения не любят ждать, пока загрузиться Gecko и зависают или вылетают.

Данный пакет ставится автоматически при установке Wine из репозитория версии 4.4.

Если вы нашли ошибку, пожалуйста, выделите текст и нажмите Ctrl+Enter.

Читайте также: