Как запускать линукс приложения на windows. PlayOnLinux: установка неподдерживаемого приложения

Wine – приложение, являющееся слоем совместимости с Windows API , использующее библиотеки Windows для обеспечения работоспособности приложений, разработанных для ОС семейства Microsoft Windows в иной среде, например, в Ubuntu . Используя Wine, вы можете устанавливать и запускать различные программы так, как будто вы используете Windows .
Wine активно развивается. Ещё не все приложения достаточно стабильно работают в Wine , однако Wine уже используется несколькими миллионами пользователей по всему миру.
Название программы Wine (waɪn - между «уа́йн » и «ва́йн », рус. Вино) - рекурсивный акроним фразы «W ine I s N ot an E mulator» - рус. «Wine - не эмулятор».

Установка Wine

Установка из PPA

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

Для последних версий wine и ubuntu 64 бита

Sudo dpkg --add-architecture i386 sudo add-apt-repository ppa:wine/ wine-builds && sudo apt-get update sudo apt-get install --install-recommends winehq-devel

И вообще не рекомендуется заполнять и настраивать wine самому. Работать с wine не совсем удобно. Чтобы установить ту или иную программу придется облазить кучу форумов и блогов, чтобы понять какие пакеты нужно установить и какие библиотеки добавить. Затем следует длинный процесс решения проблем, установки пакетов через winetricks и ручной настройки реестра и так далее. Это все очень сложно даже для опытных пользователей, не говоря уже про новичков. Поэтому рекомендуется скачать настроенный префикс wine отсюда: http://forum.ubuntu.ru/index.php?topic=199897.0

Настройка

Перед использованием Wine для запуска приложений нужно запустить программу настройки, которая создаст в вашей домашней директории каталог ~/.wine с необходимыми для работы файлами. Для этого либо выберите пункт главного меню Приложения→Wine→Configure Wine , либо выполните в терминале команду:

winecfg

Ассоциирование файлов с программами wine

Чтобы прозрачно запускать файлы с помощью wine-программ, напишем небольшой скрипт. Допустим, нам надо открывать CAD-файлы Компасом и zwcad"ом.

#!/bin/bash # Определяем расширение файла dd =$1 ; razr =` echo ${dd:(-3)} ;` ff =` echo ${dd/\"/\"Z:} ` ; ff =` echo "\" Z:" $ff \" ` ; # В зависимости от расширение запускаем нужную программу case $razr in frw) env WINEPREFIX ="/home/" $USER "/.wine" wine start ` echo $ff ` & ;; cdw) env WINEPREFIX ="/home/" $USER "/.wine" wine start "C:\\Program Files\\ASCON\\KOMPAS-3D Viewer V9\\Bin\\kViewer.Exe" ` echo $ff ` & ;; dwg) env WINEPREFIX ="/home/" $USER "/.wine" wine start ` echo $ff ` & ;; dxf) env WINEPREFIX ="/home/" $USER "/.wine" wine start "C:\\Program Files\\ZWCAD 2009 Eng\\ZWCAD.exe" ` echo $ff ` & ;; # Тут можно добавить ещё расширений и программ esac

Не забудем сделать наш скрипт исполняемым

chmod +x wine_cad.sh

и ассоциируем в файловом менеджере чертежи со скриптом.

Запуск Windows приложений

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

wine путь/ к приложению/ program.exe

Если у вас не запускается приложение или работает неправильно На сайте wine есть список приложений с описанием, для начала рекомендую свериться с ним. http://appdb.winehq.org/ - На сайте есть поле поиска. Если у вас плохо с английским, то используйте переводчик http://translate.google.com/ .

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

Приложениям, запущенным через Wine, которые работают с Веб-страницами необходим Gecko

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

sudo apt-get install wine-gecko< версия>

где <версия> надо заменить на версию установленного Wine.

Запуск через дискретную видеокарту

Для запуска через дискретную видеокарту надо прописать в терминале на свободных драйверах(или написать скрипт)

Vblank_mode=0 DRI_PRIME=1 wine имя_файла.exe

vblank_mode=0 означает вертикальная синхронизация(Vsync). Если в настройках игры нет VSync, то необходимо стереть vblank_mode=0

Сохранить. Поместить в папку с игрой. Сделать исполняемым в свойствах. Поместить ссылку на скрипт на рабочий стол. Запускать ссылку вместо файла игры. Для ещё большей производительности необходимо поставить закрытый поприетарный драйвер.

Winetricks

Winetricks – это скрипт для установки различных компонентов от Microsoft®, и некоторых других. Для получения Winetricks в терминале введите:

sudo apt-get install winetricks

Winetricks содержит несколько десятков пакетов различных библиотек для wine. Например, чтобы установить DirectX™, введите:

Winetricks d3dx9

Для просмотра списка всех пакетов, введите:

Winetricks ?

Также, Winetricks имеет простой GUI . Для его запуска введите.

Cтатья посвящена Wine PlayOnLinux и всем аспектам его использования.

В сети находится очень
много информации, есть различные руководства по настройке и многое другое. Я
постараюсь объединить все для того чтобы любой человек смог достичь
максимального успеха, в пределах своих способностей и конечно возможности
программы. Итак - начнем.Wine - это отдельная реализация Windows API, а не эмулятор, как большинство
думают. Не единожды повторялось, но и здесь будет уместно. Это и делает проект
уникальным и интересным для пользователей различных систем, открывает различные
пути для реализации своих идей. Уникальность заключается в том, что с помощью
этой программы можно запускать Windows приложения в Ubuntu и в других
Linux системах, а также во FreeBSD и в Mac OS X. Правда и тут есть
свои «подводные камни». Некоторые думают что будет легко перейти с одной
системы на другую, в д анном случае мы рассматриваем Windows и Linux.Заблуждение заключается в том что люди думают что у них получиться запустить из
под Wine различный софт, к которому они привыкли и им удобно в нем работать.
Как не крути просто так ничего не бывает. Чтобы заработал наш любимый софт под
Wine нужно попотеть, перечитать кучу руководств и взвесить этот объём
информация. Конечно не совсем софтом придется «пыжиться», но готовым надо быть ко всему. Проект Wine развивается очень быстро, но до стабильной работы ему
очень далеко. Но думаю что в скором будущем весь основной софт, а также игры
будут работать на нем стабильно.Первый вопрос человека который только что перешёл на Linux (в нашем случае
Ubuntu): «Как я буду запускать программы из Windows?». Он начинает поиск на эту
тему и естественно натыкается на Wine.
Второй вопрос: «Как его поставить?». Есть два способа: Поставить из
официальных репозиториев или скомпилировать самому из исходников. Мы рассмотрим
оба варианта.

Вариант 1: Установка из репозитория.

Тут все очень просто. Идем в Приложения // Стандартные // Терминал:

sudo add-apt-repository ppa:ubuntu-wine/ppa sudo apt-get update sudo apt-get install wine1.3
Ждем завершения установки…
Всё! Wine установлен и можно пробовать устанавливать игры и программы.

Вариант 2: Компилирование из исходников.

1.Скачиваем исходники с официального сайта, там они присутствуют. В моё случае
это Wine 1.3.11 (http://sourceforge.net/projects/wine/files/Source/wine-1.3.11.tar.bz2/download).

переходим в директорию, в которую был распакован архив с исходными текстами:

Перед компиляцией надо включить поддержку OpenGL. Если мы этого не сделаем
приложения которым нужен OpenGL работать не будут. В терминале:

gedit tools/wineinstall

Находим строку, начинающуюся с CONFARGS=, и после вписываем в нее нужные
параметры сборки. В нашем случае строка будет выглядеть так:

CONFARGS="--with-opengl --disable-debug --disable-trace"

Получаем зависимости:

sudo apt-get install auto-apt checkinstall sudo auto-apt -y run ./configure

Собираем:

Устанавливаем через создание пакета, вместо make install

sudo checkinstall

Всё. Ждем окончания установки.

Есть ещё промежуточный вариант, для джедаев на debian-based дистрибутивов. Кратко:

apt-get source wine1.3 sudo apt-get build-dep

Теперь самое интересное: скачиваем нужную версию wine с официального сайта, распаковываем, и копируем туда директорию debian из директории с исходниками оригинального пакета wine1.3. Делаем

и у нас появляется *.deb пакет для убунты/дебиана со всеми нужными патчами для дистрибутива, почти как из официального репозитория, но только новая версия. К тому же её ещё потом можно спокойно удалить так же через apt-get.
Рассмотрим плюсы и минусы каждого из вариантов.

Вариант 1.
Плюсы:
1. За нас уже все собрано и пыжиться не надо, все уже готово к употреблению.

Минусы:
1. Мы не сможем применить патч, например для улучшения работы какой нибудь игрушки.
2. Не стабильная работа на некоторых видеокартах.

Вариант 2.
Плюсы:
1. Возможность применить патчи для улучшения работы
2. Стабильная работа с не стабильными драйверами видеокарт.

Минусы:
1. Нет меню в Приложениях, что не удобно. Приходиться все делать из консоли,
выходить в настройки Wine например.
2. Процесс установки слишком долгий, зависит от мощности вашего компьютера.
1. Нет меню в Приложениях, что не удобно. Приходиться все делать из консоли, выходить в настройки Wine например.»

Можно самому добавить через Система - Параметры - Главное меню

Я отдаю предпочтение второму варианту. Wine установленный таким образом работает
лучше, чем установленный из репозиториев. Но это лишь мое маленькое ИМХО.

Установка программ и игр

Сперва мы идем на appdb.winehq.org/ Сверху, в поисковике вбиваем
название игры или программы и смотрим что там написано. Обычно там описаны
тесты на различных системах, рекомендации для стабильной работы и многое другое.

Если программа работает без проблем, значит с чистой душой её устанавливаем
простым кликом. Если это какая нибудь серьёзная игра или программа и без
шаманства с бубном не обойтись - значит надо создавать отдельный префикс* для
наших танцев. * Все файлы вайна хранятся в префиксе, или ещё называемом бутылкой (по анологии с вином/wine). Там внутри этой бутылки имеются все файлы диска C, реестр, индивидуальные настройки и так далее.

Таких бутылок может быть сколько угодно.

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

Когда вайн запускается в первый раз без указанного префикса, используется ~/.wine. Если префикс не существует вайн создаст его и наполнит дефолтным содержимым создаст и наполнит файлами каталоги C:\windows, C:\Program Files, C:\users. Плюс будет создан чистый реестр.
Идем в наш домашний каталог и создаем новую директорию. Например.wine2.
Дальше идем в терминал и вводим:

WINEPREFIX="/home/username/.wine2/" winecfg

Всё. Отдельный префикс создан. Там хранятся различные конфигурации реестра и сами программы.
Установку программы также производим через консоль.

WINEPREFIX="/home/username/.wine2/" wine /media/DVD/setup.exe

Идет процесс установки и самое главное в отдельный префикс.
Потом мы запускаем уже установленную программу, также из консоли и смотрим вывод.

В выводе могут быть ошибки, о том что нет нужных компонентов и библиотек. В
установке недостающих компонентов нам поможет winetricks (см. ниже)

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

Winetricks

В правильной настройке префикса нам поможет winetricks.
Winetricks - это скрипт, который устанавливает различные компоненты, которые
требуются для работы приложения, например DirectX, Vcredist и многое другое.
Как это скрипт работает? Он скачивает библиотеки и компоненты с
Microsoft-овских ресурсов. Именно так, и не как по другому. Зачем этот скрипт
нужен? Это очень упрощает работу с Wine-ом. Без скрипта мы бы сами лазили и
искали нужные компоненты, а тут уже все сделано, надо только поставить галочку
и нажать «Установить» Также этот скрипт помогает редактировать реестр,
вписывать туда различные ключи. И помимо этого в winetricks есть много настроек
и функций.

Для ознакомления с ним просто введите в терминале winetricks

Редактирование реестра

В терминале вводим:

Мы в реестре. Редактировать нам ничего не надо, мы будет только добавлять.

Идем в HKEY_CURRENT_USER/Software/Wine/Direct3D.

Если каталога Direct3D нет, то не отчаиваемся. Я это пишу чтобы читатель понял
где-то надо редактировать или добавлять.

В терминале:

winetricks ddr=opengl orm=fbo glsl=disabled videomemorysize=1024 (1024 меняете на свое)
Все эти параметры появиться в реестре. Это можно посмотреть в папке указанной выше.

Что это дает? Это улучшает производительность в играх, скорость и вообще игры
работают от этого лучше, но это только для игр.

PlayOnLinux

Также существует PlayOnLinux. Это отдельная программа, которая использует Wine,
но там более все автоматизированно и настроено. Программа сама скачает нужный
Wine, установит компоненты и создаст отдельный префикс. Но это не значит что
все будет идеально работать. Может вообще не работать. Так что я отдаю свое
предпочтение обычному Wine, ручной настройке и работе собственного мозга, а не
автоматизированной программе.

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

Минусы:
Все что делает программа, устанавливает и скачивает предугадать невозможно.
Все что делает программа можно сделать самому, ручками, это + к знаниям человека.
Программа «Робот» никогда не сравнится с человеческим мозгом.

Монтирование образов CD/DVD-дисков

В Windows есть для этого утилита под названием Daemon-Tools. Это очень удобная
и не заменимая утилита. У человека возникает вопрос: Есть ли аналог этой
чудо-утилиты? Ответ: Есть и на много лучше Windows утилиты. Называется она
Cdemu. Для её установки нам требуется ввести всего лишь три команды:

sudo add-apt-repository ppa:cdemu/ppa sudo apt-get update sudo apt-get install cdemu-daemon cdemu-client gcdemu

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

sudo service cdemu-daemon start

Если сервис не стартует при старте системы («The daemon is configured not to start at system startup»), можно исправить так:

sudo update-rc.d cdemu-daemon enable

Запуск игр в отдельном Х-сервере

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

Переходим в виртуальный терминал:

Ctrl + Alt + F1 login: ****** password: ******

Запускаем вручную новую копию X-сервера:

xinit -- :2 wine путь/папке/c/игрой/game.exe

Прирост от этого не большой, но лично мне этого хватает. Ещё раз повторю:
способов запуска в отдельном х-сервере много и каждый человек волен сам выбирать.

Заключение

Все эти советы, азы, которые должен знать каждый человек который хочет
использовать Wine для достижения своих целей. Все остальное в ваших руках. Если
вы хотите достичь цели не смотря ни на что, а надежда уже уходит, не
отчаивайтесь никогда, ибо решение может находиться у вас «перед носом». Усидеть
на двух стульях возможно, но для этого нужно желание и стальные нервы. Желание
- тысяча возможностей, не желание - тысяча причин.

Wine - специальное ПО, которое позволяет запускать приложения, созданные для Windows, в UNIX-подобных системах, в том числе Linux. Слышали про Wine, думаю, если не все, то многие. Хочу и я пографоманствовать на эту тему. Множество статей о Wine гласят, что надо жать на пимпу, дергать загогулину, и тогда программа (вписать название) заработает. Я бы хотел оставить это в стороне, и рассказать о Wine в целом, о том, какие существуют тонкости, и как вообще его использовать. По крайней мере, именно этого мне не хватало по началу.

Во многих дистрибутивах Wine установлен «из коробки» — достаточно выполнить двойной щелчок на файле с расширением.exe, и, вполне вероятно, все заработает. Если же этого оказалось мало, то давайте погружаться в детали.

Как узнать, какая версия Wine установлена?

Открываем консоль, выполняем команду:

winecfg

В открывшемся окне выбираем вкладку «О программе», где и находится искомое.

Где взять Wine и какую выбрать версию?

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

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

winetricks --gui

Если же вы успели создать различные префиксы, то используйте команду:

WINEPREFIX=~/.wine_example/ winericks --gui

А есть какая-нибудь программа, которая вообще все вышеописанное сделает за меня?

Есть, причем целых две. Начнем с PlayOnLinux - https://www.playonlinux.com/ru/ . Эта программа содержит большое количество сценариев для установки тех или иных приложений под Wine. Иногда нужен дистрибутив, в некоторых случаях PlayOnLinux скачает его сам, а также создаст отдельный префикс с нужными настройками Wine, скачает и установит все необходимые компоненты и т. п. В списке программ, в «общеобразовательных целях» имеются и те, которые не работают. Они подсвечены красным. Интерфейс у PlayOnLinux простой да еще и на русском языке.

Второй вариант - платное и достаточно известное решение CrossoOver (https://www.codeweavers.com/). Позиционируется как коммерческая версия Wine. Продукт, с одной стороны, нацелен на запуск офисных приложений. С другой - так же, как и в PlayOnLinux имеются сценарии для установки большого количества других приложений, в том числе игры. Лично я как-то не очень просек «фишку» этой программы. Стоит она не дешево, к тому же речь идет не о покупке «однажды и навсегда», а о подписке: 12 месяцев - 40 долларов. При этом, воспользовавшись тестовой версией (при желании сделать это можете и Вы), я увидел, что интересующие меня программы (в частности Microsoft Office, а также еще кое-что по-мелочи) работают ничуть не лучше, чем под «простым»Wine, и покупать CrossOver не стал. Не могу не заметить, что на подходе новая, 15-я, версия CrossOver, в которой нам обещают много нового — например, работающий Office 2013. Как он будет работать — конечно, большой вопрос. Но между тем.

Что в итоге?

А в итоге все просто:
— имейте свежую версию Wine;
— в случае возникновения сложностей с какой-то программой, не поленитесь посетить AppDB и просто почитать форумы. Например, на форумах многих MMO существуют специальные темы о запуске их под Wine;
— дополнительные компоненты, коль скоро такие нужны, устанавливайте при помощи Winetricks;
— особо «тяжелый» софт устанавливайте, используя специальный префикс.

Кстати, о дополнительных компонентах. Многие пытаются установить DirectX под Wine, в большинстве случаев это совершенно не обязательно. Если же игра жалуется на отсутствие какой-то конкретной библиотеки, просто установите ее через Winetricks.

А вообще — используйте Wine взвешенно. Нет никакого смысла переходить на Linux, лишь для того, чтобы пробовать запустить все свои привычные программы под Wine.

Во-первых в Linux много хорошего нативного софта, просто поищите получше, и обязательно найдете искомое. Я, например, уже , которые подобрал взамен тем, которыми пользовался в «окошках».

Во-вторых, «Wine» тянет за собой не только приложения для Windows, но и различные проблемы, присущие этой платформе. Например вирусы. А учитывая тот факт, что приложения, запущенные под Wine, имеют доступ к Вашему домашнему каталогу… Некоторые, насколько я знаю, даже устанавливают под Wine антивирусы. Но это, как мне кажется, совсем перебор.

Достаточно просто соблюдать осторожность и не устанавливать все подряд. Я под Wine запускаю две игры, да еще, время от времени, архиватор 7-zip — никак не подберу полностью устраивающий меня аналог под Linux.

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

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

Были и раньше простенькие игры с открытым исходным кодом, но популярные игры, класса ААА начали появляться только тогда, когда этой платформой заинтересовалась Valve. Но до сих пор ситуация с играми обстоит не так, как хотелось бы. Поэтому и возникает необходимость установки Windows программ в Linux.

Windows программы не могут запускаться просто двойным щелчком по исполняемому файлу. Формат исполняемых файлов Linux очень сильно отличается от Windows. Поэтому для их запуска необходимо использовать специальное программное обеспечение - wine. Название Wine образовано с помощью, почему-то популярного в мире свободного программного обеспечения способа - рекурсивный акроним, и расшифровывается как Wine is not emultor. И это правда, wine не является эмулятором.

Это программная оболочка, которая преобразует системные вызовы Windows программ в вызовы функций операционной системы Linux. Таким образом, wine представляет из себя прослойку между Windows программой и операционной системой Linux вместе с ее ядром и библиотеками.

Чтобы понять как работает Wine, нужно сначала сказать несколько слов о ядре Windows. У Windows, так же как и у Linux есть ядро. Как вы знаете ядро Linux состоит из одного файла и находится в папке boot. Ядро Windows совсем другое, по сути это набор dll библиотек, которые расположены в папке C:\windows\system32. Поэтому нам, чтобы заставить Windows программы работать в Linux достаточно реализовать dll библиотеки, которые нужны программе, так чтобы они вызывали необходимые нам функции из системы linux, что собственно и делает Wine. Но проект развивается очень медленно и разработчики не успевают реализовать все функции из системных библиотек Windows, поэтому работают далеко не все программы, особенно новые.

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

Основы использования Wine

Все файлы программ wine, установленные программы, библиотеки, файлы реестра, конфигурационные файлы находятся в домашнем каталоге, а точнее, в ~/.wine.

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

Папка ~/.wine это префикс, но мы можем создавать для каждой новой программы свой префикс и она будет работать только с ним. Чтобы задать префикс, с которым нужно работать wine используется переменная окружения WINEPREFIX, например:

export WINEPREFIX=~/program

Для разных программ может потребоваться различная архитектура системы, wine может запускать и 64 битные программы, но многим для правильной работы нужна архитектура х86.

Чтобы задать архитектуру используйте переменную WINEARCH. Например, для х86:

export WINEARCH=win32

Также не создавайте папку для нового префикса с помощью mkdir или файлового менеджера, пусть программа сама создаст эту папку при своем первом запуске.

Установка Windows программ в Wine

Если вам нужно запустить программу, полностью поддерживаемую Wine, например, проводник или notepad, достаточно выполнить:

wine адрес/файла/программы.exe

Но как я уже говорил, нам придется запускать мало таких программ, большинство из них будут требовать функционала, который еще не реализован в wine. Тогда нам придется заменить библиотеки Wine, на оригинальные библиотеки Windows. Конечно, есть оболочки для Wine, которые автоматизируют этот процесс, например, Crossover, PlayOnLinux, WineWizard и тд. Но мы рассмотрим ручной вариант.

Для установки компонентов Windows в wine существует специальный инструмент - winetricks. Устанавливать его лучше из сайта программы, так версия будет новее:

wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
$ chmod +x winetricks

Чтобы установить нужный компонент достаточно передать имя этого компонента:

winetricks vcrun2008

С установкой компонентов более-менее понятно, но как узнать какие компоненты нужны? Скорее всего, вашу программу уже пытались устанавливать и другие пользователи нашли решение проблемы. Поэтому воспользуйтесь поиском Google для того, чтобы найти способы установки программы. Также очень полезным будет сайт appdb.winehq.org. На нем собрана база данных всех поддерживаемых в Wine приложений, там есть инструкции по установке, описываются возможные проблемы и дается общая оценка работы программы, правда все на английском.

Давайте рассмотрим пример. Наберите в поиске по appdb Advego Plagiatus, напомню, что это программа для проверки уникальности текстов, часто используемая копирайтерами:

Она сразу же была найдена в базе данных:

На странице программы, мы видим кроме скниншота и оценки работы, желтый значит золото, очень хорошо, и инструкции по ее установке, в нашем случае нужен набор библиотек riched30, который можно установить командой:

winetriks riched30

После установки этого пакета программа запуститься и будет работать.

Но остается вопрос, что же делать, если инструкций нет, информации минимум, а нужно чтобы программа работала. Мы можем анализировать вывод Wine при запуске программы. Причем нас будут интересовать не все сообщения из лога программы, а только последние, именно то что вызвало ошибку.

Рассмотрим на примере той же Advego Plagiatus. Сначала создадим новый префикс, чтобы не испортить то что уже было установлено:

export WINEPREFIX=~/advego

Архитектуру нам менять не нужно, но если хотите, можете явно указать, что нужно использовать win64:

fixme:richedit:ITextRange_fnEndOf (0xa04410)->(6 0 (nil)): stub
fixme:richedit:ITextRange_fnEndOf (0xa04410)->(6 0 (nil)): stub
fixme:richedit:ITextRange_fnEndOf (0xa04410)->(6 0 (nil)): stub

Осталось понять, что такое richedit, и Microsoft TechNet нам любезно сообщает что это их API и состоит оно из Riched32.dll, это последняя версия, но раньше это была riched20.dll, уже понимаете какие библиотеки нужны?

Мы знаем как их установить с помощью winetricks, но это делать необязательно, можно и вручную. Скачайте библиотеки, найти их не составит труда с помощью Google. Только ищите версию для Windows XP.

Копируем библиотеку в наш префикс, в папку syswow64:

cp ~/Загрузки/riched32.dll ~/advego/drive_c/windows/syswow64/

cp ~/Загрузки/riched20.dll ~/advego/drive_c/windows/syswow64/

Для 32 битных библиотек используется папка system32, а поскольку мы указали архитектуру 64 бит нужно и библиотеки использовать соответствующие. Затем запустите winecfg и на вкладке библиотеки, в поле новое замещение для библиотеки наберите *riched32, затем добавить и *riched20 и опять добавить:

Все, теперь можете пробовать запускать программу:

wine ~/advego/drive_c/Program\ Files\ \(x86\)/Advego\ Plagiatus/plagiatus.exe

Теперь программа работает и больше не падает с ошибкой. Таким образом, вы можете заменить много библиотек Wine. Можно запустить практически любую программу, написанную несколько лет назад и не требующую сверх новых технологий. Достаточно только заменить нужные библиотеки. Вы можете не только использовать winetricks или копировать библиотеки из интернета, но и брать их прямо из Windows. Точно не стоит заменять gdi32.dll, kernel32.dll, и user32.dll - эти библиотеки реализуют функции ядра Windows на самом низком уровне, и если их заменить, это только нарушит работу Wine. Наверное, есть и другие библиотеки, которые нельзя заменять, но это вычисляется только путем экспериментов. Экспериментируйте и пусть ваши программы работают без ошибок!

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

Те, кто прекрасно знаком с языком программирования, конечно, знают, что это такое, но все-таки, несколько слов о том, что такое Wine, и для чего он нужен.

Прежде всего, нужно сказать, что Wine – это ПО, благодаря которому у игры для Windows можно запускать и на Linux. Единственный здесь минус – необходимость прописать пару настроек.

Способы установки

Все, кто пользуется Linux в качестве основной операционки, прекрасно знают, что сделать здесь один и тот же процесс можно несколькими вариантами. Самый распространенный способ установки Wine – это работа при помощи «Менеджера программ». Итак:

— открываем Менеджер программ;
— прописываем в поисковой строке Wine;
— из появившихся вариантов выбираем просто Wine без дополнительных символов;
— -нажимаем Install.

Что нужно знать о настройках Wine?

Сразу стоит сказать, не всегда настройки Wine получаются в первого раза. Но переживать здесь не нужно. ОС Linux хороша тем, что здесь всегда все в любой момент можно вернуть в исходное положение. Самый простой способ, применяемый, ну в самых крайних случаях – полное удаление программы, новое её скачивание, и установка. Но, главное не спешить. Если в Windows все установки проходят в основном в режиме «по умолчанию», то здесь нужно внимательно читать. Зато есть большой «плюс». Если вы сможете провести самостоятельную установку и настройку Wine, то это процесс вы запомните «на всю жизнь».

Установка Wine

Здесь есть один, но важный нюанс. Если у вас 64- разрядный дистрибутив, то Wine установится соответствующий, а это нам не нужно. Поэтому, в терминале прописываем команду: WINEARCH=win32 winecf. Открываются параметр программы, переместите их на задний план и пока не трогайте. Если Linux 32- разрядный, то этот шаг пропускаем.
После — скачиваем и устанавливаем Winetricks. С его помощью прописываются настройки Wine. Запустив Winetricks первое, что делаем, в первом окне выбираем Select the default wineprefix и ОК. Сразу открывается список шрифтов для Wine. Долго не думаем, выбираем все.

Настройки DLL

Это пункт относится к категории «важных». Открываем Install a Windows DLL or component, устанавливаем каждый компонент отдельно. Те, которые дают ошибку, просто пропускаем.

На заметку: Техпорт со скидками по промокоду вы сможете получить на портале promokodi24.ru.Здесь вы найдете различные купоны на покупки по всей России. Покупайте с выгодой для своего кошелька. Добро пожаловать!

Вы можете оценить статью:

Вас могут заинтересовать другие материалы:

    Видео: WINE — запуск Windows приложений под Linux-ом. SAS.Planet Видео: 6 Установка DirectX в Wine Видео: wine — не эмулятор Windows. Система запуска программ Windows на Linux

В этой статье инструкция как установить Wine на Ubuntu 18.04.

Пакет Wine есть в официальном репозитарии Ubuntu 18.04 (называется wine-stable). И установить его так же легко как любой пакет из репозитария, например в терминале — "sudo apt-get install wine-stable ". Однако пакет, который включен в официальный репозитарий, имеет ошибку.

В результате этой ошибки Wine "не виден" в системе, после установки. Программа не ассоциируется с программными файлами Windows (exe). Wine "не виден" в меню приложений. И программы Windows, установленные под Wine, тоже не видны в меню приложений. В результате запуск установщиков программ под Wine нужно выполнять вручную, в терминале, например так — "wine ~/temp/FSViewerSetup55.exe ". А после установки программы, нужно вручную создавать для нее файл запуска (desktop файл).

Это все неудобно, не говоря уже о том, что не всем под силу. Это конечно можно победить, тем более что сам по себе Wine работает, однако проще установить из репозитария WineHQ (официальный репозитарий разработчиков программы).

Вначале нужно удалить Wine, если он был установлен из репозитария Ubuntu 18.04.

sudo apt-get purge wine-stable

Затем выполнить установку из репозитария WineHQ:

sudo dpkg —add-architecture i386

wget -nc https://dl.winehq.org/wine-builds/Release.key

sudo apt-key add Release.key

sudo add-apt-repository "deb https://dl.winehq.org/wine-builds/ubuntu/ artful main"

sudo apt-get update

sudo apt-get install —install-recommends winehq-stable

Примечание . Установка выполняется из репозитария для версии 17.10, но этот пакет работает и на версии 18.04.

После установки нужно запустить конфигуратор Wine — winecfg .

Конфигуратор, после запуска, должен выдать запрос на загрузку и установку двух дополнительных пакетовwine-mono и wine-gecko . Однако эти пакеты можно установить и самостоятельно, до запуска winecfg .

Установка и базовая настройка Wine для игр в Linux: особенности и рекомендации

Кстати, при установке Wine из официального репозитария Ubuntu 18.04, winecfg не загружает и не устанавливает пакеты wine-mono и wine-gecko.

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

Также в меню приложений будет пункт меню Wine, в котором будут ярлыки для запуска установленных программ Windows.

Однако, для каждой установленной программы Windows, придется вручную редактировать ее desktop файл. В текущей стабильной версии Wine (3.0.1) используется новый формат строки запуска. И в строке запуска есть ошибка, в результате которой программа не запускается.

Нужно, в desktop файле, заменить строку запуска на старый формат.

Строка в новом формате выглядит так:

Exec=env WINEPREFIX="/home/user/.wine" wine C:\\\\windows\\\\command\\\\start.exe /Unix /home/user/.wine/dosdevices/c:/ProgramData/Microsoft/Windows/Start\\ Menu/Programs/FastStone\\ Image\\ Viewer/FastStone\\ Image\\ Viewer.lnk

Нужно ее изменить на такой формат:

Exec=env WINEPREFIX="~/.wine" wine "~/.wine/drive_c/Program Files (x86)/FastStone Image Viewer/FSViewer.exe"

То есть в новом формате запуск выполняется через вызов start.exe с параметром, в котором указан ярлык Windows типа. Но в этой схеме что-то не срабатывает.

А старый формат (wine + путь к программе Windows) работает.

Ярлыки (desktop файлы), установленных Windows программ, размещаются в папке "~/.local/share/applications/wine/Programs ". Кроме этого, desktop файлы, установленных Windows программ, могут быть скопированы и на Рабочий стол, если в настройках winecfg , Рабочий стол Windows связан с папкой Рабочего стола Ubuntu — эти desktop файлы тоже нужно редактировать.

Сопутствующие статьи

Иван Сухов, 2018 г.

Если вам оказалась полезна или просто понравилась эта статья, тогда не стесняйтесь — поддержите материально автора. Это легко сделать закинув денежек на Яндекс Кошелек № 410011416229354 . Или на телефон +7 918-16-26-331 .

Или другими способами (с карты, с телефона)

Даже небольшая сумма может помочь написанию новых статей 🙂

Linux, Wine, q4wine, установка и работа с программами Windows

Введение

Всем известно, что под Linux можно запускать программы, написанные для Windows. Причем таких способов несколько. Например можно эмулировать компьютер, как делают это QEMU, VMware или VirtualBox. Однако самый удобный способ запуска таких программ, конечно же Wine. Но просто Wine пользоваться не всегда удобно, для облегчения настройки и запуска программ создано немало приспособлений, одно из них — q4wine.

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

Проблемы и пути их решения

Однако, несмотря на все успехи, остается много проблем и неудобств при использовании Wine. Перечислим:

  • По идее, самого Wine хватает для запуска простейших программ. Однако многие программы требуют других компонентов Windows (Например таких как фонты, библиотеки). Эти компоненты необходимо устанавливать отдельно, причем делать это «руками» часто весьма неудобно.
  • Разные программы могут требовать разных компонентов и разных настроек Windows, причем часто несовместимых между собой.
  • Желательно иметь средство для интеграции установленных программ Windows в десктопное окружение Linux.

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

К таким программам относятся:

Работа с Wine

Запуск программ

Программы запускаются очень просто, предположим у нас есть программа для Windows, progr.exe , которую мы хотим запустить. Набираем в консоли:

Запускается Wine и запускает нашу программу. Но такие программы, в виде одного .exe файла встречаются редко. Обычно программу нужно установить. В этом случае берем установочный файл для программы и запускаем его:

Дальше все как обычно для таких программ, отвечаем на вопросы, жмем кнопочки Next и так далее. Когда скрипт отработает, программа будет установлена. По умолчанию программа будет установлена в иерархии ~/.wine

Как запустить программу? Ну можно найти, куда установилась программа, и запустить ее, как было описано выше, командой wine progr.exe Можно сварганить для ее запуска небольшой скрипт и запускать программу из этого скрипта. Я обычно делаю скрипт. Что-то вроде такого:

WINEPREFIX

По умолчанию Wine хранит все файлы и настройки в директории ~.wine Иногда бывает удобно или необходимо иметь несколько таких директориев с разными настройками.

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

q4wine

Для облегчения работы лично я выбрал среди других оболочек q4wine.

Компиляция и установка

Скачать q4wine можно отсюда:

http://sourceforge.net/projects/q4wine/

Устанавливается просто:

В качестве менеджера пакетов для софта, собранного из исходников, я использую xstow . Строки, после sudo make install , относятся к работе с этим менеджером. Директорий для установки тоже выбран исходя из этого.

Конфигурирование

Запускаем:

Переходим на таб Префиксы и запускаем Создать новый префикс

Как минимум нужно задать два параметра:

  • Путь к префиксу: Путь к директорию, где будет содержаться директория с настройками Wine, виртуальными дисками и так далее.
  • Название: название, под которым в q4wine будет фигурировать этот префикс.

Теперь выбираем созданный нами префикс и жмем кнопочку на тулбаре: Setup prefix fake drive and applications

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

Теперь можно перейти в закладку Программы . Там в директории системные — иконки системных программ, которые уже можно запускать.

Установка программ

  • Переходим в закладку Префиксы .

    21.5. Запуск игр с помощью эмулятора wine

    Выбираем нужный префикс.

  • Переходим в закладку Программы . В окошечке браузера щелкаем правой клавишей, выбираем Новый и создаем папочку для своих программ.
  • Выбираем эту папочку, щелкаем правой клавишей, выбираем Новый и создаем иконку для запуска программы.

Заключение

Ортодоксы скажут, что Wine не нужен, что все задачи можно выполнять непосредственно из-под Linux. Это да. Но иногда, например, нужно разрабатывать кроссплатформенный софт. В таких случаях и помогает Wine. Хотя в некоторых случаях не обойтись без эмулятора, типа VirtualBox.

Комментарии:

Комментировать:

Как я подружился с PlayOnLinux.

В своё время описывал свой скрипт, помогающий запускать и управлять игрой в своём префиксе WINE. При своих достоинствах, простоте и наглядности, такое простое, если не сказать топорное, решение меня вполне устраивало, но со временем обнаружились минусы.

Во-первых, при всём удобстве пользования скриптами для меня, вокруг есть близкие мне люди, которых лучше не посвящать в дебри запуска виндовых игр из консоли. Формировать для них на Рабочем Столе ярлыки к играм просто муторно и влом.

Во-вторых, при использовании «просто WINE» реально может возникнуть ситуация, когда вчера игра нормально стартовала в WINE 1.5, а завтра в WINE 1.6 крашится. У вас в системе есть всегда актуальная, но одна версия WINE, я было бы здорово установив игру, не испытывать в будущем с ней проблем.

Всё это вынудило попробовать графические утилиты, скрывающие под своим капотом работу с WINE. Уже давно мне было известно про PlayOnLinux и решил с ним подружиться.

POL.

Первым несомненным плюсом PlayOnLinux является его развитая система готовых POL скриптов, которые помогают сформировать работающее окружение в WINE.

POL файл — это скрипт с вызовами команд для PlayOnLinux, которые выставляют нужную версию MS Windows, устанавливают нужные библиотеки, помогают обойти известные проблемы с игрой. Согласитесь, что просто приятно, когда один раз автор конкретного POL скрипта разрулил все проблемы и инструкциями в POL скрипте автоматизировал и облегчил безболезненную установку любимой игры. Например, в Syberia 1 баг с чёрным экраном, автор скрипта обошёл через паузу в 10 секунд и вызовом ранее скачанного nircmd.exe, который прячет нужное окно. До этого сам не всегда додумаешься. POL это здорово!

WINE prefix.

Второй плюс PlayOnLinux — это активное использование WINE префиксов. Для каждой игры и программы, создаётся свой отдельный префикс. В дальнейшем можно легко что-либо поменять в настройках окружения одной программы и не бояться, что это негативно затронет другие приложения.

Для каждого префикса WINE, который олицетворяет собой «отдельную версию MS Windows», доступны различные действия над ним.

Собраны в одном месте часто употребительные вещи, такие как запуск редактора реестра regedit.exe, командная строка cmd.exe, диспетчер задач taskmgr.exe в данном префиксе.

Мне очень понравилась возможность «Завершить процессы», которая помогает убить все процессы WINE, если что-то пошло не так и WINE остался в памяти. Мне до этого приходилось шаманить с killall wine, но так тяжело убить все процессы WINE, так как они имеют различные названия и не попадают под одну маску. То есть одним махом семерых убивахом — не получалось у меня в консоли. Геморрой с отменяется и кнопочка «Завершить процессы» просто палочка выручалочка какая-то.

Позже более опытный линуксоид Дмитрий Махровский в группе Ubuntu Linux ВКонтакте подсказал, что убить все процессы вайн данного префикса можно через wineserver -k. Век живи — век учись.

Во вкладке «Установить пакеты» можно найти все те библиотеки, что ранее приходилось ставить через winetricks. Скажу честно, что работа в консоли с winetricks мне нравится больше. Дело в том, что PlayOnLinux скрывает, в плохом смысле этого слова, свои действия по установке библиотек, но у меня часто возникали проблемы и вывод окна «оп-с-с что-то пошло не так» меня не устраивает. Было и не раз, что winetricks железно ставит библиотеки, а PlayOnLinux, к примеру, при установке dotnet35 начинает выкачивать 300 мегабайтный Service Pack 3 для MS Windows XP и ещё кучу зависимостей, а в итоге завершается со своим «опаньки».

Данное место «Установить пакеты» мне не нравится, но благодаря POL скриптам, наверное, не часто будет и требоваться.

Вкладка «Экран» позволяет выставить различные параметры, касаемые видеоподсистемы и алгоритмов отрисовки. Очень удобно.

Вкладка «Разное» прячет полезную мне кнопку «Открыть консоль».

Установка и настройка wine на Debian/Ubuntu/Linux Mint

Она то и подружила меня с PlayOnLinux. Что-то можно реально быстрее сделать в консоли при установке и причёсывании, которая любезно откроется в этом префиксе.

Разный WINE.

Что реально делает PlayOnLinux крутым, так это умение работать с несколькими WINE. То есть в системе штатно установлен самый последний WINE и в PlayOnLinux он обзывается System, но средствами PlayOnLinux можно скачать оптимизированную версию WINE под конкретную игру. Я категорически против нарушения философии установки программ в обход штатного менеджера и минуя репозитории, НО так как PlayOnLinux скачивает другие версии WINE в домашнюю папку вашего аккаунта, то это не нарушит работоспособность системы и приемлемо. Можно даже сказать, что другого пути и нет.

Вот этой возможности мне частенько очень не хватало в чистом WINE. Жена сейчас играет в игрульку Zombie vs Plants и при очередном обновлении WINE, игра стало просто тупо падать при старте. PlayOnLinux в этом плане просто не заменим. Выставляем версию WINE вместо System на предыдущий релиз или находим, если он есть, заточенный под эту игру вайн и вуаля.

То есть можно, образно говоря, «заморозить» версию WINE, чтобы в будущем не было проблем с давно настроенным и работающим приложением из мира MS Windows в PlayOnLinux.

Плагины PlayOnLinux.

Плюсами, которыми я не пользовался, можно считать расширение возможностей PlayOnLinux с помощью системы плагинов.

Минусы.

При всех своих достоинствах, не могу не сказать про минусы.

Во-первых, что не нравится, это поиск и уведомления о новой доступной версии PlayOnLinux. В моей линукс системе с пакетным менеджментом этим должен заниматься только один товарищ — штатный установщик программ. Меня бесит этот ms windows style, когда программа сама по себе и собирается обновляться в обход системы.

В этом плане для разработчиков PlayOnLinux должен быть примером Firefox и VirtualBox, у которых в линукс версии галочки обновления в самих программах сняты. Учитывая что PlayOnLinux создавался только для линукса, ибо в винде он тупо не нужен, просто не понятно почему разработчики добавили такой функционал. Что ими двигало?

Во-вторых, повторю минус про худшую работу по установке библиотек . Скрипт winetricks работает более надёжно и железно. Вытягивание PlayOnLinux’ом без предупреждения архивов по 300 мб — это не дело. И тупые опаньки вместо информативного вывода в окне не радуют.

В-третьих, для меня существенный минус, я не знаю как в PlayOnLinux сделать игру на отдельном Xorg . С обычным WINE просто. Разрешаем запуск ещё копии Xorg — , делаем allowed_users=anybody
Запускаем WINE в стиле

Данный финт ушами позволяет избавиться от множества проблем, типа плохо вышел из игры и сбил разрешение экрана или когда в двухмониторной системе мышка убегала на другой монитор вместо того, чтобы прокрутить карту в StarCraft. Да и банально приятно получить не лишний прирост fps.

Как элегантно зашаманить игру на отдельном Xorg в PlayOnLinux я пока не знаю.

Родные линукс игры. Игра Deadlock в линукс.

Но хотелось бы статью закончить на другой ноте. WINE и все его графические ипостаси это всё хорошо и низкий поклон разработчикам, НО, благодаря Valve, которая портировала свой клиент Steam в Linux и системе голосований Greenlight, всё больше и больше игр можно запускать, не заморачиваясь с WINE.

Моё впечатление от Valve Steam Linux с каждым днём всё радужнее и радужнее. Ещё вчера я видел 30 игр под платформу Linux, сегодня их уже 40. И это только в Valve Steam.

Вот горячая новость — разработчики игры Deadlock получили достаточное финансирование в рамках краудфандинга и в феврале ожидается релиз игры с поддержкой линукс. Игра Deadlock использует движок Unity3D, который в версии 4.0 стал поддерживать линукс. То есть стоит ожидать в будущем, увеличение доступных игр на движке Unity 3D, если разработчики игры не поленятся перевести своё детище на 4 версию движка.

Можно уже сейчас поиграть в демо версию игры Deadlock в линукс версии.

Или просто посмотреть трейлер Deadlock и составить своё впечатление об игре.

Моё итоговое философское мнение таково: «Начинается в мире линукс игр новое время. Для эпохи WINE for game брезжит закат. Для родных линукс игр начинается рассвет.»

Портированные на линукс платформу игровые движки Valve Source и Unity3D переведут используемые ими игры на линукс рельсы.

Клиенты цифровой дистрибуции Valve Steam и Desura доставят нам топовые игры на компьютер.