Wine ATI et Debian

Avant de poser une question, voyez si on n'y a pas déjà répondu pour vous !

Modérateur : Mods GNU/Linux

Malekal_morte
Messages : 116917
Inscription : 10 sept. 2005 13:57

Wine ATI et Debian

par Malekal_morte »

Voici une page concernant Wine et ATI sur Debian squeeze/sid.
J'ai essayé de faire fonctionner wine sur cette configuration, voici les quelques problèmes rencontrés qui pourront certainement aider d'autres personnes dans ce cas.

xorg 1.7 :
ii xorg 1:7.5+6 X.Org X Window System
La carte graphique :
MaK-tux:/stockage/games# lspci|grep -i vga
03:00.0 VGA compatible controller: ATI Technologies Inc RV770 [Radeon HD 4870]

Driver ATI et acceleration

Dans un premier temps vous devez installer les drivers ATI propriétaires.
Tentez Wine avec les pilotes libres est une perte de temps.

Si l'acceleration 3D ne fonctionne pas, vous obtenez des erreurs de ce type sur Wine :
err:ole:CoCreateInstance apartment not initialised
X Error of failed request: BadMatch (invalid parameter attributes)
Major opcode of failed request: 137 (GLX)
Minor opcode of failed request: 5 (X_GLXMakeCurrent)
Serial number of failed request: 582
Current serial number in output stream: 582
err:d3d:context_check_fbo_status FBO 0 is incomplete, driver bug?
fixme:d3d:debug_fbostatus Unrecognied FBO status 0x00000000
fixme:d3d:context_check_fbo_status FBO status unrecognized (0)
err:d3d:context_check_fbo_status FBO 0 is incomplete, driver bug?
fixme:d3d:debug_fbostatus Unrecognied FBO status 0x00000000
fixme:d3d:context_check_fbo_status FBO status unrecognized (0)
Voici la page de téléchargement : http://support.amd.com/fr/gpudownload/l ... ng=English

A l'heure où sont écrites ces lignes, Xorg 7.5 est supporté - Assurez-vous de n'avoir aucun package fglrx Debian installez.
MaK-tux:/stockage/games# dpkg -l |grep fglrx
rc fglrx-atieventsd 1:10-6-1 external events daemon for the non-free AMD/ATI r6xx - r7xx di
rc fglrx-driver 1:10-6-1 non-free AMD/ATI r6xx - r7xx display driver
rc fglrx-glx 1:10-6-1 proprietary libGL for the non-free AMD/ATI r6xx - r7xx display
rc fglrx-glx-ia32 1:10-6-1 proprietary libGL for the non-free AMD/ATI display driver (ia3
L'installation ne pose pas de problème le driver faisant tout.
Fermer le serveur X.
Donnez les droits chmod +x au script d'installation des drivers zou.

fglrxinfo et fgl_glxgears vous permettent de vous assurer que le driver fonctionne bien.

Image


Installation et problèmes rencontrés sur Wine

Wine existe en package sur Debian, vous pouvez oublier car il manque des patchs qui feront que certains jeux ne fonctionne pas.

Notamment dans mon cas Red Alert 3 où :
Des packages Wine HQ sont disponibles à cette adresse : http://www.lamaresh.net/binary.php

La dernière version (wine 1.1.42) ne fonctionnait pas bien sur Red Alert 3. Le jeu était extremment lent (menus y compris), parfois on pouvait obtenir ces erreurs :
malekalmorte@MaK-tux:/stockage/games/Red Alert 3$ DISPLAY=:3 WINEDEBUG=fixme-all schedtool -a 0x2 -e wine RA3.exe
err:ole:CoGetClassObject class {4df0c730-df9d-4ae3-9153-aa6b82e9795a} not registered
err:ole:CoGetClassObject class {4df0c730-df9d-4ae3-9153-aa6b82e9795a} not registered
err:ole:create_server class {4df0c730-df9d-4ae3-9153-aa6b82e9795a} not registered
err:ole:CoGetClassObject no class object {4df0c730-df9d-4ae3-9153-aa6b82e9795a} could be created for context 0x17
err:ole:CoGetClassObject class {4df0c730-df9d-4ae3-9153-aa6b82e9795a} not registered
err:ole:CoGetClassObject class {4df0c730-df9d-4ae3-9153-aa6b82e9795a} not registered
err:ole:create_server class {4df0c730-df9d-4ae3-9153-aa6b82e9795a} not registered
err:ole:CoGetClassObject no class object {4df0c730-df9d-4ae3-9153-aa6b82e9795a} could be created for context 0x17
err:ole:CoGetClassObject class {4df0c730-df9d-4ae3-9153-aa6b82e9795a} not registered
err:ole:CoGetClassObject class {4df0c730-df9d-4ae3-9153-aa6b82e9795a} not registered
err:ole:create_server class {4df0c730-df9d-4ae3-9153-aa6b82e9795a} not registered
err:ole:CoGetClassObject no class object {4df0c730-df9d-4ae3-9153-aa6b82e9795a} could be created for context 0x17
err:ole:CoGetClassObject class {4df0c730-df9d-4ae3-9153-aa6b82e9795a} not registered
err:ole:CoGetClassObject class {4df0c730-df9d-4ae3-9153-aa6b82e9795a} not registered
err:ole:create_server class {4df0c730-df9d-4ae3-9153-aa6b82e9795a} not registered
err:ole:CoGetClassObject no class object {4df0c730-df9d-4ae3-9153-aa6b82e9795a} could be created for context 0x17
err:ole:CoGetClassObject class {4df0c730-df9d-4ae3-9153-aa6b82e9795a} not registered
err:ole:CoGetClassObject class {4df0c730-df9d-4ae3-9153-aa6b82e9795a} not registered
err:ole:create_server class {4df0c730-df9d-4ae3-9153-aa6b82e9795a} not registered
err:ole:CoGetClassObject no class object {4df0c730-df9d-4ae3-9153-aa6b82e9795a} could be created for context 0x17
err:ole:CoGetClassObject class {4df0c730-df9d-4ae3-9153-aa6b82e9795a} not registered
err:ole:CoGetClassObject class {4df0c730-df9d-4ae3-9153-aa6b82e9795a} not registered
err:ole:create_server class {4df0c730-df9d-4ae3-9153-aa6b82e9795a} not registered
err:ole:CoGetClassObject no class object {4df0c730-df9d-4ae3-9153-aa6b82e9795a} could be created for context 0x17
Après divers tests, la version 1.1.25 supporte les menus et le jeu est fluide.
wget http://www.lamaresh.net/apt/dists/sid/m ... _amd64.deb
wget http://www.lamaresh.net/apt/dists/sid/m ... _amd64.deb
dpkg -i wine*

NOTE : Cette page décrit très bien le fonctionnement de Red Alert 3 : http://www.astorm.ch/blog/index.php?pos ... -sous-wine
Il est notamment expliqué qu'il faut ajouter la clef language pour ne pas avoir l'erreur "installez un language pack" au lancement du jeu.

Image

Dans le cas d'Unreal Tournament 2004 (oui il est instable en full GNU/Linux) - la souris se bloquait parfois sur une ligne horizontale ou vertical.
Ajouter la clef suivante dans le registre règle le problème : [HKCU\Software\Wine\DirectInput] MouseWarpOverride = force
(lancez wine regedit).
source : http://appdb.winehq.org/objectManager.p ... n&iId=9924

winetricks et librairies

winetricks est un programme fonctionnant sous Wine qui permet de télécharger des librairies.

Typiquement lorsqu'on a des erreurs avec des librairies manquant on obtient ceci :
malekalmorte@MaK-tux:/stockage/games/Red Alert 3$ DISPLAY=:3 wine RA3.exe
err:module:import_dll Library MSVCP80.dll (which is needed by L"Z:\\stockage\\games\\Red Alert 3\\Data\\ra3_1.0.game") not found
err:module:import_dll Library MSVCP80.dll (which is needed by L"Z:\\stockage\\games\\Red Alert 3\\Data\\ra3_1.0.game") not found
err:module:LdrInitializeThunk Main exe initialization for L"Z:\\stockage\\games\\Red Alert 3\\Data\\ra3_1.0.game" failed, status c0000135
err:module:find_forwarded_export function not found for forward 'msvcrt._aligned_free' used by L"C:\\windows\\system32\\msvcr80.dll". If you are using builtin L"msvcr80.dll", try using the native one instead.
err:module:find_forwarded_export function not found for forward 'msvcrt._aligned_realloc' used by L"C:\\windows\\system32\\msvcr80.dll". If you are using builtin L"msvcr80.dll", try using the native one instead.
err:module:find_forwarded_export function not found for forward 'msvcrt._aligned_malloc' used by L"C:\\windows\\system32\\msvcr80.dll". If you are using builtin L"msvcr80.dll", try using the native one instead.
err:module:import_dll Library MSVCP80.dll (which is needed by L"Z:\\stockage\\games\\Red Alert 3\\Data\\ra3_1.0.game") not found
err:module:LdrInitializeThunk Main exe initialization for L"Z:\\stockage\\games\\Red Alert 3\\Data\\ra3_1.0.game" failed, status c0000135
wget http://www.kegel.com/wine/winetricks
chmod +x winetricks
./winetricks

Cochez les librairies que vous souhaitez installer et cliquez sur OK.
winestricks s'occupe du reste.

Image


wine et display X

Dans mon cas lorsque je lance un jeu avec une résolution différente de mon bureau, cela modifie l'affichage de mon écran et à tendance à relancer X.
Mon Windows Manager (awesome) lance plusieurs programmes au démarrage et donc lorsqu'un jeu se lance, tous mes programmes se lancent à nouveau.

Pour régler le problème, vous pouvez créer un bureau virtuel à partir de winecfg - cela peut aussi régler certains problème de résolution sur certains jeux (partie du bas couper etc) :
Image

Sur la page suivante : http://doc.ubuntu-fr.org/wine
Il est expliqué comment lancer wine sur un autre bureau afin de garder son bureau de travail intact.

Vous devez modifier le fichier /etc/X11/xorg.conf comme expliqué sur la page.
Vous trouverez joint à ce post, un exemple de mon xorg.conf
Pensez à modifier la configuration de la taille de l'écran selon votre configuration matérielle.

La page du wiki Ubuntu propose un script pour lancer ses jeux, voici le mien :
#/bin/sh
repgame=/stockage/games

case "$1" in
war3) echo On lance Warcraf 3...
repgame=$repgame/Warcraft\ III/
game="war3.exe -opengl"
;;
ra3) echo On lance Red Alert 3...
repgame=$repgame/Red\ Alert\ 3
game="RA3.exe"
;;
*) echo Jeu inconnu....
retun;;
esac
sudo X :3 -ac -terminate -screen Wine1024
DISPLAY=:3 WINEDEBUG=fixme-all xclock&
cd "$repgame"
DISPLAY=:3 WINEDEBUG=fixme-all wine "$game"
Vous devez modifier la variable $repgame afin d'indiquer où se trouve le repertoire contenant les jeux (on part du principe que tous les jeux y sont installés en sous-répertoire).
Lancez le script en paramètre - exeple scriptgame.sh war3

Exemple de captures d'écran de Warcraft 3 avec le bureau GNU/Linux derrière :
Image

Pour ceux qui veulent pas se casser la tête, vous pouvez tenter l'aventure PlayOnLinux : http://www.playonlinux.com/fr/
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Première règle élémentaire de sécurité : on réfléchit puis on clic et pas l'inverse - Les fichiers/programmes c'est comme les bonbons, quand ça vient d'un inconnu, on n'accepte pas !
Comment protéger son PC des virus
Windows 11 : Compatibilité, Configuration minimale requise, télécharger ISO et installer Windows 11

Comment demander de l'aide sur le forum
Partagez malekal.com : n'hésitez pas à partager les articles qui vous plaisent sur la page Facebook du site.
Malekal_morte
Messages : 116917
Inscription : 10 sept. 2005 13:57

Re: Wine ATI et Debian

par Malekal_morte »

Aujourd'hui c'est au tour de Steam et Counter Strike Source.
Avant de commencer je tiens à signaler que j'ai trouvé des packages Debian de version Wine récent (soit donc 1.2.x), la page est régulièrement mises à jour avec de nouveaux packages : http://dev.carbon-project.org/debian/wine-unstable/
J'ai testé Counter Source avec ces versions (du moins à la fin) en sachant que Red Alert 3 fonctionne très bien aussi (il est même plus fluide) ce qui est une bonne nouvelle.

Vous trouvez aussi ces deux liens comportent pas mal d'informations : Pour être clair, Counter Source avec Wine, ça merde pas mal.
Grosso modo, je me suis tappé toutes les erreurs qui sont répertoriés sur la page Wine plus d'autres problèmes : http://appdb.winehq.org/appview.php?iVersionId=3731


Installation de Steam : Problème

Au moment où j'ai voulu installer Steam, je n'avais pas encore la version 1.2.x
Cela est peut-être résolu ou le problème ne se pose plus sur la version 1.2.x

Les erreurs après avoir installé Steam :
OCellID: Fetching server list from CSDS. . .
err:module:import_dll Library WINHTTP.dll (which is needed by L"C:\\Program Files\\Steam\\bin\\libcef.dll") not found
err:module:import_dll Library libcef.dll (which is needed by L"C:\\Program Files\\Steam\\bin\\vgui2.dll") not found
err:module:import_dll Library WINHTTP.dll (which is needed by L"C:\\Program Files\\Steam\\bin\\libcef.dll") not found
err:module:import_dll Library libcef.dll (which is needed by L"C:\\Program Files\\Steam\\bin\\vgui2.dll") not found
err:module:import_dll Library WINHTTP.dll (which is needed by L"C:\\Program Files\\Steam\\libcef.dll") not found
err:module:import_dll Library libcef.dll (which is needed by L"C:\\Program Files\\Steam\\vgui2.dll") not found
err:module:import_dll Library WINHTTP.dll (which is needed by L"C:\\Program Files\\Steam\\libcef.dll") not found
err:module:import_dll Library libcef.dll (which is needed by L"C:\\Program Files\\Steam\\vgui2.dll") not found
WINHTTP.dll est facilement récupérable sur le net, à placer dans votre dossier system32.

Avec Steam qui boucle sur la liste des serveurs sans fenêtres :
malekalmorte@MaK-tux:~$ wine /stockage/games/Steam/Steam.exe
ALSA lib ../../../src/pcm/pcm_dmix.c:1018:(snd_pcm_dmix_open) unable to open slave
fixme:mixer:ALSA_MixerInit No master control found on HDA ATI HDMI, disabling mixer
fixme:process:SetProcessShutdownParameters (00000100, 00000000): partial stub.
CellID: Fetching server list from CSDS. . .
err:ntlm:SECUR32_initNTLMSP ntlm_auth was not found or is outdated. Make sure that ntlm_auth >= 3.0.25 is in your path.
err:ntlm:SECUR32_initNTLMSP Usually, you can find it in the winbind package of your distribution.
fixme:urlmon:CoInternetSetFeatureEnabled 5, 0x00000002, 1, stub
fixme:urlmon:CoInternetSetFeatureEnabled 10, 0x00000002, 1, stub
fixme:threadpool:RtlQueueWorkItem Flags 0x4 not supported
CellID: CSDS returned 170 servers.
CellID: Connecting to 203.66.135.197:27031. . .
CellID: Connect to 203.66.135.197:27031 took 343 MS
CellID: New Best!
CellID: Connecting to 87.248.222.122:27031. . .
CellID: Connect to 87.248.222.122:27031 took 30 MS
CellID: New Best!
CellID: Connecting to 118.107.172.47:27031. . .
CellID: Connect to 118.107.172.47:27031 took 311 MS
CellID: Connecting to 209.197.6.226:27031. . .
CellID: Connect to 209.197.6.226:27031 took 187 MS
CellID: Connecting to 69.28.153.90:27031. . .
CellID: Connect to 69.28.153.90:27031 took 124 MS
^CCellID: Connecting to 208.111.156.52:27031. . .
CellID: Connect to 208.111.156.52:27031 took 143 MS
CellID: Connecting to 118.107.172.75:27031. . .
CellID: Connect to 118.107.172.75:27031 took 309 MS
CellID: Connecting to 209.197.20.42:27031. . .
CellID: Connect to 209.197.20.42:27031 took 135 MS
CellID: Connecting to 63.150.161.165:27031. . .
CellID: Connect to 63.150.161.165:27031 took 169 MS
wine: Unhandled exception 0x40000015 at address 0x3f0214be (thread 002b), starting debugger...
Un bug a été ouvert mais non confirmé pour le moment : http://bugs.winehq.org/show_bug.cgi?id=19179

Selon la version, j'ai aussi eu droit à l'erreur :

Image

Beaucoup de posts conseillent de supprimer le fichier ClientRegistry.blob qui a pour effet de relancer les updates de Steam (qui va alors retélécharger certaines DLL et les placer dans le dossier bin dont la fameuse vgui2.dll).
Ceci est donc utile si la DLL est manquante ou si elle est corrompue, ce n'est pas le cas ici.

D'autres posts conseillent de lancer steam.exe en étant bien dans le répertoire courant de Steam : http://bugs.winehq.org/show_bug.cgi?id=6476 - ceci étant dû à un bug de Steam (qui doit j'imagine être corrigé depuis).
Bref dans mon cas, vu que le message ne se présente plus au delà d'une certaine version de Windows, le problème semble plutôt venir de Wine.

Finalement, en copiant un répertoire Steam issu d'une installation Windows et en version 1.1.42, Steam se lance.
(peut-être simplement avec la version 1.1.42 cela fonctionne).

A noter qu'entre temps je suis passé en 1.2.x, si je reviens en wine 1.1.42, j'ai à nouveau l'erreur.
(Sur une version 1.1.25 aussi - par contre, Counter Source se lance bien avec la version fournie par les packages, actuellement 1.0.1-3).

Steam se lance pas et Virtual Desktop obligatoire

Ensuite si Counter Source ne se lance pas, il faut aller désactiver des options dans Steam - voir ce post : http://bugs.winehq.org/show_bug.cgi?id=22053
(Je n'étais toujours pas en wine 1.2.X à ce moment là - c'est peut-être corrigé).
To work around this, go to Settings > Friends > "Notifications and Sounds",
uncheck all checkboxes, and select "Never" for "Flash Window".
Then go to Settings > In-Game and uncheck the "Enable Steam Community In-Game"
checkbox. The game should launch ok now.
En mode non fenetré, le clavier ne fonctionne pas toujours (aucune réponse lorsqu'on tape), peut-être un lien avec ce bug : http://bugs.winehq.org/show_bug.cgi?id=21770
En lançant Steam sur un autre écran virtuel, cela fonctionne.

Image

Parfois on a des bugs d'affichage avec des plaques noires, ou les murs sont invisibles ex..
Exemple avec les plaques noires :

Image

Image

Installation de Polices

Voila ce que l'on peux avoir parfois au lancement de Counter Source sur Wine
(voir http://bugs.winehq.org/show_bug.cgi?id=11159 ).

Image

Image

Installez les polices tahoma.ttf (comme indiquer sur le wiki Ubuntu) et marlett.ttf ne change rien.

Créer un serveur local puis le quitter, les polices deviennent ensuite lisibles (enfin pas complètement....).

Plantage et histoire de son (Alsa)

Avec la version 1.1.xx - le son est saccadé (coupure, répétition etc) - j'avais aussi des plantages (Le PC freez complètement plus rien ne répond seul la souris bouge).
Souvent sur des erreurs type :
err:ntdll:RtlpWaitForCriticalSection section 0x16be94
Il y a bcp de posts concernant des histoires de Alsa mal supporté et il faut passer en OSS.
(A noter aussi que sur Ubuntu, sur certaine version, Counter planté avec pulseaudio).

Sur les forums, beaucoup parlent de problèmes de plantage à cause de Alsa ( parait que c'est corrigé : http://ubuntuforums.org/showpost.php?p= ... stcount=20 ).
Chacun y va de ses réglages de son qui soit disant règlent les problèmes.
Il parait même qu'il fallait plutôt utiliser OSS ou lancer Counter avec aoss qui d'ailleurs chez moi donnaient des erreurs du type :
ERROR: ld.so: object '/usr/$LIB/libaoss.so' from LD_PRELOAD cannot be preloaded: ignored.
A cause de sombres histoires de 32/64 bits (voir http://ubuntuforums.org/showthread.php?t=425327 et non installer ia32-alsa-oss_1.0.10-1_amd64.deb ne change rien).

Au final, passer en wine 1.2.X et le son est OK sauf lorsque la bombe est posée la première fois sur une série, on a un gros freez, les parties d'après, plus de freez jusqu'à ce qu'une nouvelle map soit chargée et la bombe posée et ainsi de suite.

Les plantages chez moi venait du fait que le processus hl2.exe restait aux alentour de 100% et cela fait planter Debian (ou les drivers de la carte graphique ou le PC).

Image

[Je ne sais pas si c'est un problème de température car en jouant avec des bots, la température monte à 65 degrés pendant plusieurs minutes et cela ne gène en rien. Les plantes sont beaucoup plus fréquents en jouant sur le net - Au final plantage des drivers ATI ?].

Lancer hl2.exe en Windows 98 depuis winecfg ne change rien.
Jouer sans le son ne change rien.
Les plantages sont beaucoup plus fréquents en partie multijouer qu'en partie local avec des bots.

La seule parade contre les platages et de limiter l'utilisation du processus hl2.exe avec cpulimit, les problèmes de plantages ne se posent plus :
hl2pid=`ps -ef|grep hl2.exe|awk '{print $2}'` ; sudo cpulimit -p $hl2pid -l 85
(oui je pourrais utiliser -e avec hl2.exe - mais parfois ça merdouille)

Parfois, au bout d'un moment, le jeu se met complètement à ramer, j'ai l'impression que cela est dû à sur utilisation de la CPU par wineserver.

FPS conclusion

Pour les réglages au lancement via la console, voir ce post : http://www.commentcamarche.net/forum/af ... e-a-css#76

Wine 1.2 tout seul sur un serveur = 70 ~ 120 sans joueurs.
Moyenne de 60 - 70 en multijoueur.
Passer en max détail ne semble pas trop pénalisant.

Image

Bref on est loin des performances que mon PC peux m'offrir si j'étais sous Windows et ce n'est pas vraiment stable du tout.
Conclusion même si Counter Source est très utilisé il est notannent de voir qu'il est très mal supporté par wine.
Jouer à Counter Source sur Wine est réservé aux warriors :)
Première règle élémentaire de sécurité : on réfléchit puis on clic et pas l'inverse - Les fichiers/programmes c'est comme les bonbons, quand ça vient d'un inconnu, on n'accepte pas !
Comment protéger son PC des virus
Windows 11 : Compatibilité, Configuration minimale requise, télécharger ISO et installer Windows 11

Comment demander de l'aide sur le forum
Partagez malekal.com : n'hésitez pas à partager les articles qui vous plaisent sur la page Facebook du site.
  • Sujets similaires
    Réponses
    Vues
    Dernier message

Revenir à « Tutoriels et annonces »