web-dev-qa-db-fra.com

Wine n'est plus capable d'initialiser OpenGL

Depuis un moment, wine n'est plus capable d'initialiser OpenGL sur mon Linux 64 bits. Ce n'est en aucun cas un problème unique pour moi. Beaucoup de gens avec des cartes nvidia sous Linux 64 bits semblent avoir ce problème avec wine sur oneiric:

Et bien que certains rapports de bogue du tableau de bord indiquent que l'on devrait utiliser cette solution de contournement:

LD_PRELOAD=/usr/lib32/nvidia-current/libGL.so.1 wine <app>

Malheureusement, cela ne résout pas le problème du tout pour moi; C'est-à-dire que si j'exécutais CS: S, le jeu fonctionnerait correctement pendant un certain temps, mais abandonnerait après un certain temps, y compris une série d'erreurs liées à GLSL.

Voici les erreurs de démarrage de simplement exécuter Steam:

+ wine Steam.exe
fixme:process:GetLogicalProcessorInformation ((nil),0x33e488): stub
[.. snip ...]
fixme:dwmapi:DwmSetWindowAttribute (0x1009a, 3, 0x33d384, 4) stub
fixme:dwmapi:DwmSetWindowAttribute (0x1009a, 4, 0x33d374, 4) stub
err:wgl:is_extension_supported No OpenGL extensions found, check if your OpenGL setup is correct!
err:wgl:is_extension_supported No OpenGL extensions found, check if your OpenGL setup is correct!
err:wgl:is_extension_supported No OpenGL extensions found, check if your OpenGL setup is correct!
[... this error is being reported a few dozen times, so snip again ...]
err:wgl:is_extension_supported No OpenGL extensions found, check if your OpenGL setup is correct!
err:wgl:is_extension_supported No OpenGL extensions found, check if your OpenGL setup is correct!
err:wgl:is_extension_supported No OpenGL extensions found, check if your OpenGL setup is correct!
err:wgl:is_extension_supported No OpenGL extensions found, check if your OpenGL setup is correct!
fixme:iphlpapi:NotifyAddrChange (Handle 0x47cdba8, overlapped 0x45dba80): stub
fixme:winsock:WSALookupServiceBeginW (0x47cdbc8 0x00000ff0 0x47cdbc4) Stub!
[... snip ...]

Voici les erreurs signalées lors de l'exécution, et après exécution (car le journal est énorme, il est collé ailleurs): http://paste.ubuntu.com/901925/


Maintenant, 32 bits OpenGL fonctionne très bien; Les exécutables 32 bits de Nexuiz, par exemple, fonctionnent parfaitement. Cela étant dit, je soupçonne qu'il s'agit d'un problème de vin lui-même.

J'ai déjà construit manuellement la version git de wine, en vain.


Alors que se passe-t-il? Quelque chose est cassé? Comment vérifier (correctement) si quelque chose est cassé? Comment résoudre ce problème?


Information additionnelle:

  • Mon GPU:

    $ lspci | grep VGA
    01:00.0 VGA compatible controller: nVidia Corporation G92 [GeForce 9800 GT] (rev a2)
    
  • Installé via DPKG (à l'aide du PPA 'Ubuntu X-Swat': https://launchpad.net/~ubuntu-x-swat/+archive/x-updates ).

  • Version de wine: wine-1.5.0 (construite manuellement à partir du référentiel GIT, mais la version pré-construite déclenche la même erreur, comme expliqué ci-dessus)

  • Desktop Env: KDE4.2, mais la même erreur se produit également sous GNOME et XFCE.

  • Trucs de noyau (uname -a): Linux leuchtturm 3.0.0-17-generic #30-Ubuntu SMP Thu Mar 8 20:45:39 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

  • Essayé un préfixe de vin propre (WINEPREFIX=$HOME/tmp/wine wine ...), n'a pas aidé non plus.


Quelques autres informations éventuellement liées:

Lorsque vous exécutez l'application Direct3D à partir d'un ancien bogue que j'ai ouvert, Wine ne signale aucune erreur OpenGL: http://bugs.winehq.org/attachment.cgi?id=25707 (source est inclus, c'est juste une application de test vraiment trivial).

Je ne suis pas sûr de ce qui se passe.

6
user2817

Bon, cela me force à répondre à ma propre question, mais il s’est avéré que les erreurs OpenGL sont relativement inoffensives; La mise à niveau de ia32-libs [1] a rendu le travail de Steam assez parfait (c’est-à-dire qu’il fonctionne maintenant comme avant ces erreurs).

Donc, si quelqu'un d'autre rencontre ces erreurs, mettez à niveau vos pilotes GPU et mettez à niveau ia32-libs.


[1]: Je suis tombé sur un PPA ia32-libs, qui contient un paquet plus récent de ia32-libs, qui pourrait également résoudre certains problèmes avec d'autres logiciels en fonction de la compatibilité 32 bits: http: // radicalbreeze. com/forum/viewtopic.php? f = 11 & t = 525

Pour ajouter ce PPA, exécutez-le simplement dans votre terminal:

Sudo add-apt-repository ppa:micove/experimental

(experimental parce que l'autre n'inclut pas les paquets pour oniriques et les plus récents, en particulier pangolin).

1
user2817