Wine/fr

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 (NdT: Wine n'est pas un émulateur, Wine Is Not an Emulator) est une couche d'application de compatibilité qui autorise les applications Microsoft Windows à fonctionner sur Linux ou des systèmes d'exploitations compatibles POSIX.

 Variantes de Wine

Sélectionner une variante

D'autres séries de patchs peuvent introduire des bugs qui n'existent pas dans la version vanilla de Wine, mais ils peuvent aussi en corriger d'autres apportés par d'autres patchs.

Installation

 USE flags

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)
+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
+vkd3d Enable DirectX 12 support using app-emulation/vkd3d
+vulkan Add support for 3D graphics and computing via the Vulkan cross-platform API
+xcomposite Enable support for the Xorg composite extension
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)
cups Add support for CUPS (Common Unix Printing System)
custom-cflags Build with user-specified CFLAGS (unsupported)
debug Enable extra debug codepaths, like asserts and extra output. If you want to get meaningful backtraces see https://wiki.gentoo.org/wiki/Project:Quality_Assurance/Backtraces
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
ldap Add LDAP support (Lightweight Directory Access Protocol)
llvm-libunwind Use sys-libs/llvm-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)
openal Add support for the Open Audio Library
opencl Enable OpenCL support (computation on GPU)
osmesa Enable off-screen rendering (OpenGL in bitmaps) support
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)
udisks Enable storage management support (automounting, volume monitoring, 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)
+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
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)
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 sys-libs/llvm-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)
osmesa Enable off-screen rendering (OpenGL in bitmaps) support
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)
udisks Enable storage management support (automounting, volume monitoring, 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)
+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
+vkd3d Enable DirectX 12 support using app-emulation/vkd3d
+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)
custom-cflags Build with user-specified CFLAGS (unsupported)
debug Enable extra debug codepaths, like asserts and extra output. If you want to get meaningful backtraces see https://wiki.gentoo.org/wiki/Project:Quality_Assurance/Backtraces
llvm-libunwind Use sys-libs/llvm-libunwind instead of sys-libs/libunwind
nls Add Native Language Support (using gettext - GNU locale utilities)
openal Add support for the Open Audio Library
osmesa Enable off-screen rendering (OpenGL in bitmaps) support
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)
udisks Enable storage management support (automounting, volume monitoring, 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 vs 64-bit

La plupart du temps, les applications Windows ont besoins du support du 32-bit. Cela peut être vrai dans le cas des applications 64-bit, car elle utilisent toujours un installeur en 32-bit.

Cela signifie qu'une importante quantité de dépendances de Wine ont besoin du support du 32-bit.

Compiler Wine avec l'USE-flag wow64 activera le support des applications 32-bit sans construire Wine et ses dépendances qui supportent le 32-bit, mais cela est (au moment où ces lignes sont écrites) plus ou moins expérimentale. Cela fonctionne très bien avec beaucoup d'applications, mais inutilisable avec d'autres.

Notez que certaines dépendances de Wine ont besoins du paramètre de configuration du noyau CONFIG_COMPAT_32BIT_TIME pour fonctionner. Sinon cela générera des erreurs du type: «The futex facility returned an unexpected error code.» (NdT: L'utilitaire futex a retourné un code d'erreur inattendu) durant la compilation ou le lancement. Un paquet touché par exemple est dev-libs/icu[1] et sys-devel/llvm.

Variable d'environnement durant la compilation

L'ebuild (9999) en temps réelle (NdT: la dernière version) supportent des paramètres pour définir la branche du dépôt, du commit, de la date du commit et du dépôt via la commande d'environnement suivante :

  • EGIT_OVERRIDE_BRANCH
  • EGIT_OVERRIDE_COMMIT
  • EGIT_OVERRIDE_COMMIT_DATE
  • EGIT_OVERRIDE_REPO

À titre d'exemple, quelqu'un peut sélectionner l'étiquette de WineHQ "wine-2.0-rc5" pour installer la version 2.0 RC 5 :

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

L'on peut aussi épingler Wine Staging à cette version en trouvant l'étiquette appropriée, "v2.0-rc5", puis en augmentant la version précédente comme-ceci :

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'

D'autres variables, qui affectent Wine au lancement, sont discutées plus bas.

Emerge

Activer les USE flags de son choix à travers le paquet (NdT: de la catégorie) virtual puis sur la variante sélectionner (de manière automatique par le paquet virtual ou manuellement) pour ensuite emerge le paquet :

root #emerge --ask virtual/wine

ou

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

Seulement les versions dites "stables" selon l'upstream (NdT: les développeurs) seront stabilisés dans Gentoo, seulement pour la variante app-emulation/wine-vanilla, car les patchs externes ne sont pas considérés stables. Certains utilisateurs peuvent opter pour l'ajout de la variante Wine dans leur fichier package.accept_keywords pour autoriser l'installation de la version de développement de Wine.

Configuration

Variables d'environnement à l'exécution

Les variables d'environnement du shell avec lequel wine est lancé sont accessibles aux processus de Windows/DOS. Quelques variables spécifiques très utiles incluses, mais qui ne sont pas réduites à celles-ci sont, WINEPREFIX, WINEARCH et WINEDEBUG.

Voir les entrées des manuels de man wine et man wineserver pour de plus amples informations détaillées concernant les variables d'environnement de Wine.

WINEPREFIX

Important
Le répertoire de préfixe (par défaut $HOME/.wine) est généré quand Wine est exécuté de n'importe quelle façon (par exemple, en lançant winecfg). Cela signifie aussi que, s'il est exécuté en tant qu'utilisateur root (voir WineHQ FAQ - Should I Run Wine as Root) (NdT: Dois-je lancer Wine en tant que Root), un préfixe Wine sera (par défaut) généré dans /root/.wine.

Pour créer un préfixe Wine dans un emplacement personnalisé (au lieu du ~/.wine) sans affecter celui par défaut :

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

Ci-dessus créera un préfixe Wine à l'emplacement /home/utilisateur/.wine-someprefix.

Remarque
Une fois qu'un préfixe a été crée, le 'bitness' (NdT: Dans ce contexte, l'architecture des bits, 32 ou 64 bits) ne peut pas être changé. De ce fait, la variable WINEARCH doit être défini quand le préfixe est crée si l'utilisateur veut modifier la valeur par défaut. WINEARCH est sans importance au-delà de l'instanciation du préfixe.

WINEARCH

Pour créer une installation 32-bit à la place de celle par défaut (à la compilation) en 64-bit :

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

L'exécutable de Wine peut être n'importe quoi qui lance Wine, tel que winecfg, ce qui fait parfois sens lors-qu’est crée un nouveau préfixe.

WINEARCH a besoin que Wine soit compilé avec le drapeau (NdT: de compilation) abi_x86 correspondant.

WINEDEBUG

L'essentiel est de trouver pourquoi une application se comporte mal quand les messages basiques du terminal ou de la boîte de dialogue ne sont pas suffisants. Voir https://wiki.winehq.org/Debug_Channels (NdT: en anglais) par exemple.

Outils de configurations

Les outils suivant inclus des interfaces graphiques et en ligne de commande pour gérer les préfixes de Wine :

Pilotes graphiques

Le registre des valeurs graphiques est une chaîne de caractères séparés par des virgules et de type REG_SZ.

Pilote Description
x11 Utilise le pilote X11
wayland Utilise le pilote wayland
mac Utilise le pilote natif quartz (par défaut sur MacOS)
null Utilise le pilote 'null' (un écran virtuel sera crée, mais non-affiché, disponible depuis Wine 5.2)

Par défaut (sous Linux)

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

Pour activer seulement le pilote expérimental de wayland :

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

Support de l'Easy Anti Cheat

Le DT_HASH n'étant pas activé par défaut depuis glibc 2.36 alors ce qui suit doit d'être appliqué pour autorisé l'EAC des jeux à fonctionner

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

Foire À Questions de l'Upstream

Quelques entrées de la FAQ de l'upstream que des utilisateurs peuvent trouver utiles :

Dépannage

Quand un utilisateur rencontre un problème avec une application, il doit tenter d'essayer la dernière version de développement pour voir si ces comportements non-désirés existent encore. Si Wine a été compilé avec des options tel que -fomit-frame-pointer ou --hash-style=both, les développeurs ne pourront pas à priori aider avec ce problème et les rapports incluant ce type d'options de compilation ne devraient pas être rapporté vers le Bugzilla de Wine.

L'USE flag strip doit être désactivé pour débuger les versions compilés de MinGW.

Pour plus d'aide afin de rapporter des bugs, voir Bugzilla et Bugs sur wiki.winehq.

Support

Les utilisateurs peuvent trouver du support additionnel sur le canal #gentoo-wine (webchat) sur Libera.chat.

Voir aussi

  • DOSEMU — an application compatibility layer for MS-DOS geared more towards running MS-DOS applications than running games.
  • Émulateurs de jeux — Liste des émulateurs de jeux dont Gentoo a fait un paquet
  • Lutris — an open source gaming platform for Linux.
  • Steam — a video game digital distribution service by Valve.
  • Winetricks — an easy way to work around problems in Wine. (NdT: Astuce de Wine)

Ressources externes

Références