Wine/hu

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page Wine and the translation is 100% complete.
Other languages:

Wine (Wine Is Not an Emulator) egy Microsoft Windows szoftverek futtatását Linuxon és más POSIX-kompatibilis operációs rendszereken lehetővé tévő alkalmazás-kompatibilitási réteg. Ez a cikk a Wine általános célú környezetének telepítésével, beállításával és karbantartásával foglalkozik a Gentoo operációs rendszeren.

Wine változatai

Változat kiválasztása

További javítócsomagok olyan hibákat is bevezethetnek, amelyek az alapvető Wine-ban nem léteznek, ugyanakkor kijavíthatnak más, meglévő problémákat is.

Telepítés

USE jelölőzászlók

USE flags for virtual/wine Virtual for Wine that supports multiple variants and slotting

proton Enable Valve Software's fork of Wine
staging Enable Wine-Staging's Patchset

USE flags for app-emulation/wine-vanilla Free implementation of Windows(tm) on Unix, without external patchsets

+X Add support for X11
+alsa Add support for media-libs/alsa-lib (Advanced Linux Sound Architecture)
+dbus Enable dbus support for anything that needs it (gpsd, gnomemeeting, etc)
+fontconfig Support for configuring and customizing font access via media-libs/fontconfig
+gecko Enable mshtml support using app-emulation/wine-gecko
+gstreamer Add support for media-libs/gstreamer (Streaming media)
+mingw Build PE files using a MinGW toolchain for better compatibility
+mono Enable .NET support using app-emulation/wine-mono
+opengl Add support for OpenGL (3D graphics)
+sdl Enable gamepad support using media-libs/libsdl2
+ssl Add support for SSL/TLS connections (Secure Socket Layer / Transport Layer Security)
+strip Allow symbol stripping to be performed by the ebuild for special files
+truetype Add support for FreeType and/or FreeType2 fonts
+unwind Add support for call stack unwinding and function name resolution
+vulkan Add support for 3D graphics and computing via the Vulkan cross-platform API
+xcomposite Enable support for the Xorg composite extension
bluetooth Enable Bluetooth Support
capi Enable ISDN support using net-libs/libcapi
crossdev-mingw Use sys-devel/crossdev for the toolchain rather than dev-util/mingw64-toolchain (requires manual setting up and is mostly unsupported, try disabling if have issues)
cups Add support for CUPS (Common Unix Printing System)
custom-cflags Build with user-specified CFLAGS (unsupported)
dos Pull in games-emulation/dosbox to run DOS applications
ffmpeg Enable ffmpeg/libav-based audio/video codec support
gphoto2 Add digital camera support
kerberos Add kerberos support
llvm-libunwind Use llvm-runtimes/libunwind instead of sys-libs/libunwind
netapi Enable support for configuring remote shares using net-fs/samba
nls Add Native Language Support (using gettext - GNU locale utilities)
odbc Add ODBC Support (Open DataBase Connectivity)
opencl Enable OpenCL support (computation on GPU)
pcap Support packet capture software (e.g. wireshark)
perl Install helpers that require perl (winedump/winemaker)
pulseaudio Add sound server support via media-libs/libpulse (may be PulseAudio or PipeWire)
samba Pull in net-fs/samba with winbind for NTLM auth support
scanner Add support for scanner hardware (e.g. build the sane frontend in kdegraphics)
selinux !!internal use only!! Security Enhanced Linux support, this must be set by the selinux profile or breakage will occur
smartcard Enable smartcard support
udev Enable virtual/udev integration (device discovery, power and storage device support, etc)
usb Add USB support to applications that have optional USB support (e.g. cups)
v4l Enable support for video4linux (using linux-headers or userspace libv4l libraries)
wayland Enable dev-libs/wayland backend
wow64 Enable running 32bit applications without 32bit ELF multilib by mapping to 64bit calls (experimental, *may* have worse/unusable OpenGL performance or other issues compared to USE=abi_x86_32, also lacks 16bit support) -- still need dev-util/mingw64-toolchain with abi_x86_32 which itself does not need multilib
xinerama Add support for querying multi-monitor screen geometry through the Xinerama API

USE flags for app-emulation/wine-staging Free implementation of Windows(tm) on Unix, with Wine-Staging patchset

+X Add support for X11
+alsa Add support for media-libs/alsa-lib (Advanced Linux Sound Architecture)
+dbus Enable dbus support for anything that needs it (gpsd, gnomemeeting, etc)
+fontconfig Support for configuring and customizing font access via media-libs/fontconfig
+gecko Enable mshtml support using app-emulation/wine-gecko
+gstreamer Add support for media-libs/gstreamer (Streaming media)
+mingw Build PE files using a MinGW toolchain for better compatibility
+mono Enable .NET support using app-emulation/wine-mono
+opengl Add support for OpenGL (3D graphics)
+sdl Enable gamepad support using media-libs/libsdl2
+ssl Add support for SSL/TLS connections (Secure Socket Layer / Transport Layer Security)
+strip Allow symbol stripping to be performed by the ebuild for special files
+truetype Add support for FreeType and/or FreeType2 fonts
+unwind Add support for call stack unwinding and function name resolution
+vulkan Add support for 3D graphics and computing via the Vulkan cross-platform API
+xcomposite Enable support for the Xorg composite extension
bluetooth Enable Bluetooth Support
capi Enable ISDN support using net-libs/libcapi
crossdev-mingw Use sys-devel/crossdev for the toolchain rather than dev-util/mingw64-toolchain (requires manual setting up and is mostly unsupported, try disabling if have issues)
cups Add support for CUPS (Common Unix Printing System)
custom-cflags Build with user-specified CFLAGS (unsupported)
dos Pull in games-emulation/dosbox to run DOS applications
ffmpeg Enable ffmpeg/libav-based audio/video codec support
gphoto2 Add digital camera support
kerberos Add kerberos support
llvm-libunwind Use llvm-runtimes/libunwind instead of sys-libs/libunwind
netapi Enable support for configuring remote shares using net-fs/samba
nls Add Native Language Support (using gettext - GNU locale utilities)
odbc Add ODBC Support (Open DataBase Connectivity)
opencl Enable OpenCL support (computation on GPU)
pcap Support packet capture software (e.g. wireshark)
perl Install helpers that require perl (winedump/winemaker)
pulseaudio Add sound server support via media-libs/libpulse (may be PulseAudio or PipeWire)
samba Pull in net-fs/samba with winbind for NTLM auth support
scanner Add support for scanner hardware (e.g. build the sane frontend in kdegraphics)
selinux !!internal use only!! Security Enhanced Linux support, this must be set by the selinux profile or breakage will occur
smartcard Enable smartcard support
udev Enable virtual/udev integration (device discovery, power and storage device support, etc)
usb Add USB support to applications that have optional USB support (e.g. cups)
v4l Enable support for video4linux (using linux-headers or userspace libv4l libraries)
wayland Enable dev-libs/wayland backend
wow64 Enable running 32bit applications without 32bit ELF multilib by mapping to 64bit calls (experimental, *may* have worse/unusable OpenGL performance or other issues compared to USE=abi_x86_32, also lacks 16bit support) -- still need dev-util/mingw64-toolchain with abi_x86_32 which itself does not need multilib
xinerama Add support for querying multi-monitor screen geometry through the Xinerama API

USE flags for app-emulation/wine-proton Valve Software's fork of Wine

+alsa Add support for media-libs/alsa-lib (Advanced Linux Sound Architecture)
+dbus Enable dbus support for anything that needs it (gpsd, gnomemeeting, etc)
+fontconfig Support for configuring and customizing font access via media-libs/fontconfig
+gecko Enable mshtml support using app-emulation/wine-gecko
+gstreamer Add support for media-libs/gstreamer (Streaming media)
+mono Enable .NET support using app-emulation/wine-mono
+sdl Enable gamepad support using media-libs/libsdl2
+ssl Add support for SSL/TLS connections (Secure Socket Layer / Transport Layer Security)
+strip Allow symbol stripping to be performed by the ebuild for special files
+unwind Add support for call stack unwinding and function name resolution
+xcomposite Enable support for the Xorg composite extension
crossdev-mingw Use sys-devel/crossdev for the toolchain rather than dev-util/mingw64-toolchain (requires manual setting up and is mostly unsupported, try disabling if have issues)
custom-cflags Build with user-specified CFLAGS (unsupported)
llvm-libunwind Use llvm-runtimes/libunwind instead of sys-libs/libunwind
nls Add Native Language Support (using gettext - GNU locale utilities)
perl Install helpers that require perl (winedump/winemaker)
pulseaudio Add sound server support via media-libs/libpulse (may be PulseAudio or PipeWire)
selinux !!internal use only!! Security Enhanced Linux support, this must be set by the selinux profile or breakage will occur
udev Enable virtual/udev integration (device discovery, power and storage device support, etc)
usb Add USB support to applications that have optional USB support (e.g. cups)
v4l Enable support for video4linux (using linux-headers or userspace libv4l libraries)
wow64 Enable running 32bit applications without 32bit ELF multilib by mapping to 64bit calls (experimental, *may* have worse/unusable OpenGL performance or other issues compared to USE=abi_x86_32, also lacks 16bit support) -- still need dev-util/mingw64-toolchain with abi_x86_32 which itself does not need multilib
xinerama Add support for querying multi-monitor screen geometry through the Xinerama API

32-bit kontra 64-bit

Gyakran előfordul, hogy a Windows alkalmazások 32 bites támogatást igényelnek. Ez igaz lehet még 64 bites alkalmazások esetén is, mivel ezek továbbra is használhatnak 32 bites telepítőt.

Ez azt jelenti, hogy a Wine számos függősége szintén 32 bites támogatást igényel. Ha ez nincs globálisan engedélyezve az összes csomaghoz, akkor az autounmask opció használata az emerge segédprogrammal hasznos lehet a lista felépítésében.

A Wine lefordítása engedélyezett wow64 USE jelölőzászlóval lehetővé teszi a 32 bites alkalmazások futtatását anélkül, hogy a Wine szoftvert és annak függőségeit 32 bites támogatással kellene létrehozni. Ez azonban (ezen angol nyelvű cikk írásának időpontjában) többé-kevésbé kísérleti jellegű. Számos alkalmazásnál nagyon jól működik, de más alkalmazásoknál használhatatlan.

Vegye figyelembe, hogy a Wine bizonyos függőségeihez a kernelbeállításban a CONFIG_COMPAT_32BIT_TIME beállítása szükséges a működéshez. Ennek elmulasztása olyan hibaüzeneteket generálhat, mint például: "The futex facility returned an unexpected error code." a kódfordítás során vagy a binárisra lefordított kód futásának idején. Az érintett szoftvercsomagok például a dev-libs/icu[1] és a sys-devel/llvm.

Kódfordítás közbeni környezeti változók

A live (9999) ebuild-ek támogatják a tároló-ág, commit, commit dátum és tároló beállítását a következő környezeti változók segítségével:

  • EGIT_OVERRIDE_BRANCH
  • EGIT_OVERRIDE_COMMIT
  • EGIT_OVERRIDE_COMMIT_DATE
  • EGIT_OVERRIDE_REPO

Példaként kiválaszthatja a WineHQ "wine-2.0-rc5" címkét a 2.0 RC 5 verzió emerge-vel történő előállításához:

root #EGIT_OVERRIDE_COMMIT_WINE_WINE="wine-2.0-rc5" emerge -a '=app-emulation/wine-vanilla-9999'

Ezenkívül a Wine Staging is rögzíthető ugyanahhoz a kiadáshoz a megfelelő "v2.0-rc5" címke megtalálásával, és kiegészíti az előző parancs a következőképpen:

root #EGIT_OVERRIDE_COMMIT_WINE_WINE="wine-2.0-rc5" EGIT_OVERRIDE_COMMIT_WINE_WINE_STAGING="v2.0-rc5" emerge -a '=app-emulation/wine-staging-9999'

A Wine szoftverre futásidőben ható egyéb változóiról lentebb esik szó.

Emerge

Engedélyezze az Ön által választott USE jelölőzászlókat először a virtuális szoftvercsomagon, majd a kiválasztott variánson (amelyet automatikusan a virtuális szoftvercsomag vagy manuálisan Ön választ ki), és emerge parancs segítségével hozza létre a szoftvercsomagot:

root #emerge --ask virtual/wine

vagy

root #emerge --ask app-emulation/wine-${VARIANT}

Csak az upstream által "stabilnak" minősített verziók kerülnek stabilizálásra a Gentoo-ban, és kizárólag a app-emulation/wine-vanilla variánsként, mivel a külső javítócsomagokat nem tekintik stabilnak. Egyes felhasználók dönthetnek úgy, hogy hozzáadják a Wine variánsokat a package.accept_keywords fájlhoz, hogy lehetővé tegyék a Wine fejlesztői verzióinak telepítését.

Beállítás

Futásidejű környezeti változók

Az a shell környezeti változók, amelyből a wine elindul, elérhetővé válnak a Windows/DOS folyamatok számára. Néhány nagyon hasznos, kifejezetten a Wine szoftverre vonatkozó változó többek között a WINEPREFIX, a WINEARCH és a WINEDEBUG.

Tekintse meg a man wine és a man wineserver súgókat a Wine környezeti változóival kapcsolatos részletesebb információkért.

WINEPREFIX

Important
A prefix könyvtár (alapértelmezetten $HOME/.wine) létrejön, amikor a Wine bármilyen módon elindul (például a winecfg futtatásával). Ez azt is jelenti, hogy ha root felhasználóként hajtják végre (részletek a WineHQ GYIK - Should I Run Wine as Root leírásban), akkor a Wine prefix (alapértelmezés szerint) a /root/.wine helyen lesz létrehozva.

Futtassa a következő parancsot az egyedi helyen (~/.wine helyett) történő Wine prefix létrehozásához anélkül, hogy az alapértelmezettet befolyásolná:

user $WINEPREFIX="$HOME/.wine-someprefix" wineboot

A fenti megoldás létrehozna egy Wine prefix -et a következő helyen: /home/<user>/.wine-someprefix.

Note
Miután egy prefix létrejött, az 'architektúra' (arch) nem változtatható meg. Ennek megfelelően, ha a felhasználó felül szeretné írni az alapértelmezést, akkor a WINEARCH értékét az prefix létrehozásakor kell meghatározni. A WINEARCH az prefix létrehozásán túl értelmetlen.

WINEARCH

32 bites telepítés létrehozása az alapértelmezett 64 bites helyett:

user $WINEARCH="win32" WINEPREFIX="$HOME/.wine-someprefix" wineboot

A használt Wine végrehajtható fájl bármely olyan fájl lehet, amely a Wineszoftvert futtatja, például a winecfg, amely gyakran hasznos egy tiszta, új prefix létrehozásakor.

A WINEARCH értékének használatához a Wine szoftvert a megfelelő abi_x86 jelölőzászlókkal kell felépíteni.

WINEDEBUG

Alapvető fontosságú annak kiderítéséhez, hogy egy alkalmazás miért működik hibásan, amikor az alapvető terminál kimenet vagy az üzenetablakok nem elegendőek. Példaként tekintse meg a https://wiki.winehq.org/Debug_Channels leírást.

Beállítást segítő eszközök

Az alábbi eszközök grafikus és parancssori felületeket tartalmaznak a Wine prefix-ek kezeléséhez:

  • app-emulation/q4wine – Qt5 grafikus felhasználói felülettel rendelkező beállítást segítő eszköz a Wine számára.
  • app-emulation/winetricks – Egyszerű módszer a Wine problémáinak megoldásához, például amikor a szükséges DLL fájlokat kell telepíteni.

Grafikus illesztőprogramok

Grafikus rendszerleíró adatbázis értéke vesszővel elválasztott karakterlánc és REG_SZ típusú.

Illesztőprogram Leírás
x11 X11 illesztőprogramot használ.
wayland Wayland illesztőprogramot használ.
mac Natív quartz meghajtót használ. (Alapértelmezett macOS).
null Null eszközmeghajtót használ. (Egy virtuális képernyő létrejön, de nem jelenik meg. Elérhető a Wine 5.2 verziója óta).

Alapértelmezett (Linux rendszeren)

user $wine cmd /c "reg add HKEY_CURRENT_USER\\Software\\Wine\\Drivers /v Graphics /t REG_SZ /d x11 /f"

Kísérleti wayland eszközmeghajtó engedélyezéséhez:

user $wine cmd /c "reg add HKEY_CURRENT_USER\\Software\\Wine\\Drivers /v Graphics /t REG_SZ /d wayland /f"

Easy Anti Cheat Support

Mivel a DT_HASH alapértelmezés szerint nincs engedélyezve a glibc 2.36 óta, ezért a következő lépéseket kell alkalmazni az EAC (Easy Anti-Cheat) játékok működéséhez:

FILE /etc/portage/package.use/glibc
sys-libs/glibc hash-sysv-compat
root #emerge --ask --oneshot sys-libs/glibc

Upstream GYIK

Néhány upstream GYIK bejegyzés, amit a felhasználók hasznosnak találhatnak:

Hibaelhárítás

Ha egy felhasználó problémát tapasztal egy alkalmazással, akkor érdemes kipróbálni a legújabb fejlesztői verziót, hogy lássa, a nem kívánt viselkedés továbbra is fennáll-e. Ha a Wine szoftver olyan opciókkal lett létrehozva, mint a -fomit-frame-pointer vagy a --hash-style=both, akkor a Wine fejlesztők valószínűleg nem tudnak segíteni a problémában, és az ilyen build-ek kimenetét tartalmazó jelentéseket nem szabad beküldeni a Wine Bugzilla weboldalra.

A strip USE jelölőzászlót le kell tiltani a MinGW build-ek hibakereséséhez.

Hibák bejelentésével kapcsolatos további útmutatásért tekintse meg a Bugzilla and Bugs részt a wiki.winehq oldalon.

Támogatás

A felhasználók további támogatást találhatnak a #gentoo-wine (webchat) csatornán a Libera.Chat weboldalon.

További olvasnivaló a témában

  • DOSEMU — an application compatibility layer for MS-DOS geared more towards running MS-DOS applications than running games.
  • Játékemulátorok — Gentoo által csomagolt játékemulátorok listája.
  • Lutris — an open source gaming platform for Linux.
  • Steam — egy videójáték digitális terjesztési szolgáltatás a Valve által.
  • Winetricks — an easy way to work around problems in Wine.

Külső források

Hivatkozások