ZenWay - Linux сегодня!
  • Главная
  • Форум
  • Контакты
  • Архив
  • Гостевая книга
×
Поиск по сайту
ГлавнаяHужное/полезноеИгрыИзучаем LinuxWine (введение)

Wine (введение)

Изучаем Linux, Игры, Hужное/полезноеПросмотров: 24246Комментарии: 410 мая 2010 г.
Debian / Games / Ubuntu / Wine / Комплект инструментов / Учебные материалы / Эмулятор

Что такое Wine

Название Wine есть аббревиатура: Wine Is Not An Emulator. Почему? Потому что это не эмулятор. Программу можно назвать прослойкой между программами для операционной системы Windows и операционной системой Linux, FreeBSD, MAC OS X. Это кроссплатформенная программа - спокойно запускается во многих операционных системах. Даже в Windows - а вдруг какая-нибудь старая программа не хочет работать в новой версии системы, или наоборот? Так как это прослойка, есть небольшая потеря в скорости. Мои игры работают с количеством кадров в секунду на 15% меньше, чем в Windows XP. Эмулятор, в отличие от подобной прослойки, имеет потерю в скорости работы программ в разы.

Wine обычно требует много зависимостей. Например, для того, чтобы специализированная для работы с локальной сетью программа для Windows работала, Wine делает прослойку с программой Samba. Например, интернет-пейджер QIP нуждается в компоненте Samba - Winbind. Однако, от ненужной лично вам зависимости всегда можно отказаться - подробнее пойдёт речь об этом в приложении. Если забыл сделать приложение - напомните?!

Ещё кое-что интересное

Запускается, к сожалению, не каждая программа. В моём представлении - почти каждое оконное приложение работает без проблем (если это не программа от самой Microsoft, пользующаяся огромным количеством специфических функций библиотек Windows). Работает также большинство игр. Эталонной средой для них является видеокарта nVidia с её проприетарными драйверами. С ним у вас должны заработать самые последние графические эффекты, и скорость работы игр будет максимальной (минус 15-20% от скорости работы той же игры в операционной системе Windows). Проприетарный драйвер ATi страдает большим количеством проблем, которые часто проявляются именно в Wine. То, что не работает с этим драйвером, может быть сбоем fglrx (проприетарного драйвера ATi/AMD), а не программы Wine. Если полноэкранное приложение у вас неожиданно заполнилось месивом содержимого экрана, нажмите Alt-F2 и наберите:

wineserver -killall

Правда, закроются все программы, запущенные в Wine - в том числе и фоновые и оконные, о которых вы могли и забыть. Эту команду также можно ввести из текстового терминала, нажав сочетание клавиш Ctrl-Alt-F1. Вернуться обратно можно сочетанием клавиш Ctrl-Alt-F7. Примечание: я уже набрал весь текст, поэтому мне так лень редактировать множество его участков... Пусть эта команда будет моим нулевым советом вам.

Ещё одно примечание: регрессии в запускаемых в Wine программах касаются только неработоспособности какого-либо компонента. Не бывает такого, что то, что работает, неправильно выдаёт результат, что логика работы программы нарушается. Например, архиватор не делает архивы, которые в Windows потом не открываются, программа для скриншотов не записывает файл задом наперёд. В играх машины не будут ездить по неправильной траектории, а на нас не будут нападать невидимые монстры. Вот эффект продвинутого освежения неба может не заработать, хотя включен в настройках, это да. Если ошибка и есть, программа аварийно завершает работу. Из 1000 программ, которые я протестировал, неправильная логика программы у меня встретилась только 2 раза. Первый случай: игра Герои Меча и Магии IV. Проверьте сами... Завершаем мы игру, убивая последнего врага. Что делает операционная система Windows? Пишет «Игрок Сизый уничтожен! Ура, игра закончилась!». Что делает Wine? Мы играем дальше, собираем ресурсы, артефакты - но как только появится любой диалог (например, мы захватили шахту), то сразу после него нам и пишут «Игрок сизый уничтожен, игра окончена!». Второй случай - в Сталкере. Я игру полностью прошёл в версии Wine 1.1.2. Запускаю его в 1.1.20, в 1.1.25... Замочу кучу врагов. Сохранюсь. Загружусь. Часть врагов под землёй, и оружия. Иногда его можно присесть и вытащить из-под земли. Чтобы всё появилось обратно, надо выйти из локации и зайти в неё обратно. Я не помню, было ли это в 1.1.2, я не пробовал эту игру в Windows и не знаю, может, это свой самой игры, а не Wine'а?.. Слушайте, а синяя полоска в меню инвентаря, она у меня всегда полная в первой части игры, даже если броня повреждена... Но если нападает пси-собака или контролёр, она понижается, показывая мне психическое здоровье игрока. Так и надо?!

То, с чего можно начать «тюнинг» программы Wine. Установка Wine

Хотите улучшить запуск программ в Wine? Первый мой совет: научитесь компилировать Wine из исходного кода! В случае, если у вас видеокарта nVidia, это почти ничего не изменяет: программы работают с той же скоростью - но в игре S.T.A.L.K.E.R. без патчей 1.004 и 1.005 в игре частично пропадает трава при перемещении героя, а в игре Morrowind неправильно показывается вода, если в игре включены пиксельные шейдеры. И это не исправляется никакими патчами: если вы любите игру Morrowind, вам придётся скомпилировать Wine вручную... Дело в том, что Mesa, свободная реализация библиотеки OpenGL, с которой обычно компилируется программа Wine из репозитария, не содержит часть функций, которая есть в несвободных реализациях этой библиотеки от nVidia и ATi. При этом скомпилированный вариант Wine с драйвером nVidia не заработает с ATi должным образом - и наоборот. Если у вас видеокарта Intel, или вы используете какой-нибудь свободный драйвер для видеокарты с поддержкой 3D-акселерации графики, компиляция ничего не изменит в работе игр. А если проприетарный драйвер от ATi... Ой! Бр-р-р... Лучше компилировать. Правда. Это исправляет много-много ошибок и замедлений в скорости работы игр.

Как осуществить мой первый совет? Устанавливаем зависимости. Если у вас Debian/Ubuntu, скомандуйте от имени суперпользователя в консоли:

apt-get build-dep wine

При этом должен быть загружен репозитарий исходных кодов программ - он для этого и нужен!

Затем:

fakeroot apt-get -b source wine

Ждём... Всё. Минус такого подхода в том, что сразу после релиза Wine специально подготовленные пакеты для компиляции из исходного кода могут быть не готовы, и придётся их сделать самому. Я напишу в приложении, как.

С дистрибутивами, программы в которые устанавливаются из пакетов в формате RPM, нужно скачать пакет src.rpm с Wine. Желательно, конечно же, для своего дистрибутива, но может подойти пакет и для любого другого! Я не пробовал... Достали? Командуем от имени пользователя:

rpmbuild -ba wine-1.1.44-fedora.src.rpm

Ждём... Всё.

Если ваш дистрибутив не работает ни с RPM, ни с DEB пакетами, я уверен, вы сами знаете, как скомпилировать Wine. Загрузить исходный код с главной страницы программы, распаковать его, и скомандовать:

./configure
make

И make install от имени суперпользователя!

Установится программа в /usr/local. А почему не в /usr? Если хотите в /usr, первую строчку команды нужно исправить так: ./configure -prefix=/usr. Если у вас несколько процессоров, или несколько ядер процессора, компиляцию программы можно ускорить при желании в несколько раз, исправив вторую команду на make -j2. Ну, или -j4, в зависимости от количества ядер процессора, которые вы хотите задействовать... Исходный код Wine готов к распараллеливанию потоков компиляции подобным образом...

Я всегда предпочитаю именно последний способ. С ним скрипт configure всегда сообщит мне, какой зависимости у меня нет (иногда появляются новые), и какая функция Wine не будет работать, если скомпилировать программу без неё. Или какую зависимость мне нужно обновить перед обновлением Wine. Так я могу получить самую последнюю версию Wine сразу, до того, как будет создан новый пакет для моего дистрибутива. А ещё мне приятно осознавать, что программа устанавливается с максимальной оптимизацией именно для моего оборудования.

А если у вас 64-битный дистрибутив? Тут уже не работает последний способ...

Вам поможет вот это руководство:

//wiki.Winehq.org/WineOn64bit.

Читайте продолжение:

Wine - первый запуск

Wine - особенности запуска программ

Wine + Photoshop = Дружба!

Q4Wine

Wine - первый запуск
aTunes
Автор: vovans
Еще записи по теме
Новый Supaplex (New Supaplex)
Новый Supaplex (New Supaplex)
Gens/GS
Gens/GS
MiniRacer
MiniRacer
Sil
Sil
0verkill
0verkill
Tempus Irae
Tempus Irae

Комментариев: 4 RSS

1vovans11-05-2010 00:47

Материал достаточно интересный и доходчиво написанный. Взял отсюда и разбил на 4 части:

//zenitur.narod.ru/Wine.html

Единственное что, я обычно компилирую в /opt, например:

/opt/wine-1.0.1
/opt/wine-1.1.14

Сам wine - немаловажная программа в Linux! Почтовые клиенты, Офисы и прочее можно использовать нативное, но если речь идёт о различных обучающих программах и курсах, об энциклопедиях и т.п., то wine тут здорово выручает! И аналогов такого рода софта в Линуксе не найти :( А ведь не так редко попадаются действительно качественные и нужные продукты!

Да и тот же IE необходим вебмастеру для отладки :(

Так что, уменее запустить программу в wine - это не так уж мало. Wine не только из-за игр существует!

Кстати, вот-вот ожидается стабильная ветка Wine - 1.2.* ;)

PS спасибо автору за труд!

2Аноним24-10-2010 18:17

А что у тебя выдаёт команда whereis wine?

3Сергей20-10-2011 17:03

ПОжалуйста напиши подробно как запустить team fortress 2 комфортно через wine!Заранее благодарен!

4Zenitur20-10-2011 22:55

Ну как-как, //appdb.winehq.org/objectManager.php?sClass=version&iId=9901

Также выстави в winecfg во вкладке "библиотеки" библиотеку gameoverlayrenderer как "disabled".

Оставьте комментарий!

Используйте нормальные имена.

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

(обязательно)

Рубрики
  • Hовости
  • Изучаем Linux
  • Обзоры Linux ПО
    • Hужное/полезное
    • Аудио и видео ПО
    • Графика
    • Офисное ПО
    • Интернет ПО
    • Образовательные
    • Игры
    • Администрирование
    • Системные утилиты
    • Прочие
    • Shareware / Demo
  • Дистрибутивы
  • Дополнительные материалы
Последние комментарии
AbiWord
  • Святой_Мученик_Linux » Некорректно отображает картинки в майкросовтовски х файлах doc. Картинки позиционируются одна на другую, поверх текста. В...
  • vs » К сожалению, AbiWord давно протух и толку от него ровно 0. Даже больше вреда. Сейчас...
tarsnap
  • Анонимус » В тексте опечатка "для использования для использования"
DarGUI / KDar
  • WinGamer » Можно ли забекапить всю систему windows этим архиватором?
cfiles
  • Дмитрий » так эт самое, а как например переименовать папку?
Profanity
  • zon » проше научится свой клиент написать чем разобратся куда что клацать для отправки получения месаг.
  • vovans » Тут не нужно ничего "клацать". Достаточно пару раз на хоткеи посмотреть.
noteshrink
  • Аноним » Теперь есть плюсовая (не пайтон) версия: //github. com/ ImageProcessing - ElectronicPublications /noteshrink-c/ releases
Page dewarp
  • Аноним » Теперь есть плюсовая (не пайтон) версия: //github. com/ ImageProcessing - ElectronicPublications /pagedewarp/ releases
Strawberry Music Player
  • Rododendron » А как добавить радиостанции в плеер? Нигде найти не могу.
Форум
[18/11/2022 11:54:52]
vscode and c/c++
[31/08/2022 12:25:53]
Tor Browser
[26/08/2022 07:57:14]
Музыкальный калейдоскоп
[22/05/2022 15:45:40]
Стратегии RTS
[30/03/2022 09:05:20]
Заметки с синхронизацией
[01/03/2022 20:15:05]
Говорильня (дискуссионный клуб)
[13/02/2022 11:44:28]
[РЕШЕНО] права на запись в примонтированный образ диска (raw.img)
[07/02/2022 13:22:01]
Конвертировать текст набаранный в неправильной раскладке
[04/02/2022 20:35:22]
Редактор тегов
Облако меток
2D338 3D241 ALSA68 ASCII120 Android1 Arch Linux38 Audio416 Backup80 Benchmark78 Bluetooth2 C++969 CD48 Console1318 DJ-система17 DVD47 Debian28 DjVu22 Enlightenment19 FFmpeg191 FLTK29 FPS40 FREE155 FTP18 FVWM21 Fluxbox40 GIMP24 GNU26 GPS22 GTK1302 GUI801 Gambas11 Games686 Gentoo3 Gnome349 Gstreamer133 HDD122 HDR7 HTML62 Hex-редактор14 ICQ17 IP-сети25 IP-телефон22 IRC31 ISO39 IceWM22 ImageMagick56 JACK99 Jabber35 Java308 JavaScript115 KDE209 LAN29 LXDE37 LaTeX66 Live-CD70 Live-DVD55 Live-USB53 Lua61 MATE32 MEncoder31 MIDI91 MMORPG12 Mail42 Markdown53 Mono53 Mplayer75 MySQL2 OSS9 Open Source14 OpenGL301 Openbox89 P2P51 PDF133 PHP12 Pascal17 Perl102 Phonon27 PulseAudio17 Python759 QT894 RAW34 RPG101 RSS53 RTS42 Roguelike70 Ruby19 Rust15 SDL312 SVG39 Screencast32 Screenshot61 Script78 Slackware66 TOR17 TOX3 Tk39 Torrent67 Ubuntu69 VLC16 Vala64 Web629 WebKit72 WebUI34 WiFi47 Window Maker16 Wine8 XMPP35 Xfce70 Xine14 YouTube80 video4linux27 wxWidgets108 Автоматизация31 Администрирование335 Анонимная сеть47 Антивирус14 Апплет120 Аркада235 Архиватор11 Астрономия36 Аудио конвертер70 Аудио редактор50 Аудиоплеер184 Безопасность243 Бизнес-приложение4 Браузер87 Бродилка203 Бухгалтерия11 Веб-камера36 Видео148
© Zen Way, 2023. Работает на MaxSite CMS | Время: 0.1669 | SQL: 19 | Память: 8.76MB | Вход