staging.inyokaproject.org

[Wine] Angy Birds meckert falsche Architektur für OpenGL-Treiber an ?!

Status: Gelöst | Ubuntu-Version: Xubuntu 13.04 (Raring Ringtail)
Antworten |

holgiB

Anmeldungsdatum:
11. November 2008

Beiträge: 528

Hallo zusammen,

ich wollte meiner Kleinen eine Freude machen und ihr Angry Bird auf ihrem PC installieren. Angry Birds hat gemäß der Wine AppDB fast durch die Bank weg Gold oder gar Platinum Rating. Das kann ich nicht so recht bestätigen ☹

Der Versuch das Spiel von CD unter Xubuntu 13.04 x64 zum Laufen zu bringen quittiert Angry Birds mit folgender Fehlermeldung:

>wine AngryBirds.exe 
err:module:load_builtin_dll failed to load .so lib for builtin L"OPENGL32.dll": libGL.so.1: falsche ELF-Klasse: ELFCLASS64
err:module:import_dll Loading library OPENGL32.dll (which is needed by L"C:\\Programme\\Rovio\\Angry Birds\\AngryBirds.exe") failed (error c000007a).
err:module:LdrInitializeThunk Main exe initialization for L"C:\\Programme\\Rovio\\Angry Birds\\AngryBirds.exe" failed, status c0000135

Wine ist in Version 1.4.1 installiert (= direkt aus dem Repo ohne Fremd-Repos).

Der Kernel ist der aktuelle 3.11.0-14-generic in 64 Bit. Der PC besitzt eine Cedarview Atom CPU. Die Grafikkarte ist eine Zotac 610PCI mit dem 331er NVidia Treiber:

OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce GT 610/PCIe/SSE2
OpenGL core profile version string: 4.3.0 NVIDIA 331.20
OpenGL core profile shading language version string: 4.30 NVIDIA via Cg compiler

Andere 3D Spiele wie Tux Racer, Sauerbraten, usw. funktionieren auf der Kiste einwandfrei.

Eine Testinstallation auf meinem 12.04er Xubuntu PC mit NVidia 9500GT (propritärer Treiber) und AMD E350-CPU verlief auch nicht besser. Das Spiel ließ sich zumindest einmal starten und das notwendige Update per www brach vier Mal ab und hinterließ eine defekte Installation, die sich nicht mehr starten ließ.

Unter Windows 7 hingegen ließ sich Angry Birds stressfrei installieren und aktualisieren.

Hat irgendeiner ein Idee, was die obige Fehlermeldung verursacht ? Die passenden lib32-Bibliotheken müssten doch eigentlich mit installiert werden, oder ?

Danke & Gruß, Holgi

Bearbeitet von Kelhim:

Titel angepasst

Kelhim

Avatar von Kelhim

Anmeldungsdatum:
18. September 2006

Beiträge: 3642

Was geben die beiden Befehle aus?

env WINEARCH=win32 wine AngryBirds.exe
dpkg --get-selections | grep -i libgl1-mesa-glx 

holgiB

(Themenstarter)

Anmeldungsdatum:
11. November 2008

Beiträge: 528

Danke für deine Antwort ! Das explizite Setzen der Wine-Architektur brachte leider keine Besserung:

1
2
3
4
5
6
stephie@stephie-atom:~/.wine/drive_c/Programme/Rovio/Angry Birds$ env WINEARCH=win32 wine Angry
AngryBirds.exe   Angry Birds.gdf  
stephie@stephie-atom:~/.wine/drive_c/Programme/Rovio/Angry Birds$ env WINEARCH=win32 wine AngryBirds.exe 
err:module:load_builtin_dll failed to load .so lib for builtin L"OPENGL32.dll": libGL.so.1: falsche ELF-Klasse: ELFCLASS64
err:module:import_dll Loading library OPENGL32.dll (which is needed by L"C:\\Programme\\Rovio\\Angry Birds\\AngryBirds.exe") failed (error c000007a).
err:module:LdrInitializeThunk Main exe initialization for L"C:\\Programme\\Rovio\\Angry Birds\\AngryBirds.exe" failed, status c0000135

Es sind auch scheinbar beide mesa-Libs installiert:

1
2
3
stephie@stephie-atom:~/.wine/drive_c/Programme/Rovio/Angry Birds$ dpkg --get-selections | grep -i libgl1-mesa-glx
libgl1-mesa-glx:amd64				install
libgl1-mesa-glx:i386				install

Kelhim

Avatar von Kelhim

Anmeldungsdatum:
18. September 2006

Beiträge: 3642

Wenn ich diesen Thread aus dem englischen Forum richtig verstehe, hängt es mit dem Grafiktreiber zusammen. Ich sehe, dass du den aktuellen proprietären von Nvidia benutzt - vielleicht hilft ein älterer Treiber, z.B. der aus den Ubuntu-Paketquellen?

holgiB

(Themenstarter)

Anmeldungsdatum:
11. November 2008

Beiträge: 528

Danke für den Hinweis ! Ich hatte schon einen ähnlich gelagerten Fall im crunchbang Forum gelesen: http://crunchbang.org/forums/viewtopic.php?id=23524

Auf meinem System habe ich in der Tat den NVidia-Treiber ebenfalls nicht per apt installiert, sondern per run-Datei. Dies hat wohl bewirkt, dass die 32 Bit Version für libgl nicht korrekt von Wine angesprochen wurde. Die initiale Installation der von Ubuntu mitgelieferten Treiber funktionierte zwar, aber das Kernelmodul wurde nicht korrekt geladen.

Die erste Antwort aus diesem Thread (http://askubuntu.com/questions/289459/nvidia-drivers-installed-but-not-used) brachte zu Tage, dass bei mir wohl nicht die korrekte Datei für das Kernelmodul geladen wurde und deshalb der Nvidia-Treiber auch nicht beim Start von X korrekt initialisiert wurde. Warum die Installation der "Ubuntu" NVidia-Treiber nicht gleich bei der Neuinstallation geklappt hat und warum der NVidia-eigene Run-Installer nicht die 32-Bit Libs korrekt installierte, weiß ich nicht, aber es ist letztendlich auch egal....

Das komplette Putzen des Systems von alten NVidia-Leichen (per apt-get purge und NVidia run-Datei) plus Neuinstallation des Treibers in Version 313 brachte die (Er)Lösung...Angry Birds startet.

Das Update der installierten Version fällt hier auch auf die Fratze, aber man ist ja nicht gezwungen zu aktualisieren. Zur Registrierung bzw. Eingabe der Seriennummer musste ich noch in der config.lua Fullscreen auf False setzen, damit Wine das Registrierungsfenster korrekt rendert, aber inzwischen geht alles einwandfrei !

Schönen Dank nochmal, Holgi

Antworten |