Obererpel schrieb:
Erste Beobachtung: Die Gecko Version aus den Paketen scheint nicht zu passen:
| marc@glumanda:/usr/share/wine/gecko$ ls /usr/share/wine/gecko/
wine_gecko-2.21-x86_64.msi
marc@glumanda:/usr/share/wine/gecko$ wine --version
wine-1.8.5 (Ubuntu 1.8.5-1ubuntu1)
|
Laut WineHQ benötigt man Version 2.40. Die habe ich (32bit- und 64bit-Variante) heruntergeladen und in /usr/share/wine/platziert. Diablo installiert gerade.
Kann man das als Bug bezeichnen?
Ne.
Eigentlich lädt sich wine beim ersten Ausführen, die richtige Gecko Version für das jeweilige Prefix herunter (vorausgesetzt, man bricht dne Vorgang nicht manuell ab) und holt sich die meines Wissens nach nicht aus den Paketquellen. Bei wine updates wird auch meines Wissens nach Gecko aktualisiert.
Jetzt folt noch mein Wissen über WINE-Prefixe und hoffe dir damit und zukunft behilflich zu sein:
1. Einleitung
Ein Prefix ist Vergleichbar mit einer Virtuellen Windows-Partition und wird benutzt, wenn man versch. Windows Programme auf sein System installieren will, hier teile ich JEDEM Programm sein eigenes Prefix zu (ich komme später dazu wie das funtkioniert), weil ich so jedem Programm nur die DLLs mitgebe, die es auch wirklich benötigt, dass bringt zum einen Performance Vorteile bei Spielen mit sich, das Fehlerfinden fällt mir leichter (weniger Programme pro Prefix = weniger Terminalausgabe) und DLLs konkurrieren nicht miteinander, wenn ich z.B. versch. Versionen für diese benötige. Hier gibt es unterschiede bei 32-bit und 64-bit Prefixen. WINE wird schon seit Jahrzenten entwickelt, da die 32-bit Architektur deutlich früher als die 64-bit Archtitektur rauskam (und auch weil es theoretisch einfacher ist, funktionen für 32-bit zu entwickeln und diese dann auf 64-bit zu porten als anders herum), wurde wine deutlich weiter im 32-bit Bereich entwickelt. Das Problem hierbei ist allerdings, dass viele moderene Programme gar keine 32-bit Versionen mehr anbieten (deshalb laufen viele euen Programme nicht) und auch, dass ein 64-bit Programm mehr RAM benutzen kann (auch ein Faktor, wieso Windows bei neueren Spieletiteln mehr FPS hat), dies sind die Gründe, warum WINE insbesonderen bei alten Programmen so gut funktioniert und ich Persönlich ein 32-bit Prefix einem 64-bit Prefix vorziehen würde.
2. Verwendung von Prefixen
Auch wenn es dir wahrscheinlicht nicht bewusst wahr, hast du die ganze Zeit in einem Prefix gearbeitet, einem 64-bit um genau zu sein und du hast es dir unbewusst angelegt.
Zu dieser behauptung folgt jetzt folgende Erklärung:
1. Wenn bei einem Prefix nicht genau gesagt wird, an welchem Ort sich das Prefix befinden soll, wird es in .wine angelegt
2. Wenn bei einem Prefix nicht genau spezifizeirt wird, ob es 64-bit oder 32-bit ist, wird als default einstellung immer 64-bit genommen.
Mit anderen Worten: Wenn ich wine frisch installiert habe und ich auch noch kein Prefix angelegt habe (also der Ordner .wine existiert noch nicht) und ich jetzt einfach nur
winecfg
in ein Terminal eingebe, wird WINE folgendes tun: es guckt nach für welches Prefix es den Befehl ausführen soll, ist nicht genau angegeben, also nimmt es das Prefix .wine . .wine Existiert noch nicht, also wird es angeleget, hierbei wurde auch nicht festgelegt ob es 32 oder 64-bit ist, also wird ein 64-bit Prefix gewählt. Jetzt müsste ein Fenster aufpoppen indem wine wird initilisiert oder ähnliches steht und dann müsste eigentlich auch eine Abfrage kommen, ob die Gecko oder Mono installiert werden soll, dann manuell auf installieren klicken und dann müsstest du eig. auch die richtige Gecko Version haben.
Wenn man jetzt ein 32-bit Prefix anlegen will, dann tut man folgendes:
WINEPREFIX="$HOME/prefix32" WINEARCH=win32 winecfg
hierbei ist prefix32 der Name der Prefixes im Homeordner (du kannst testweise auch was anderes als prefix32 eingeben, achte aber bitte darauf den Namen kurz zu halten, weil es so weniger Tipparbeit beim arbeiten im Prefix ist. Und mit dem WINEARCH teil wird festgelegt, dass die Architekturs 32-bit sein soll.
Bei dem Befehl tut WINE also nun folgendes: es führt den Befehl winecfg aus, jetzt guckt es in welchem Prefix, dieses ist nun genauer spezifiert, es existiert aber noch nicht, also guckt wine welche Archtitektur es haben soll , auch das ist nun angegeben, WINE legt jetzt ein 32-bit Prefix im Ordner prefix32 an.
Mit diesem Wissen, kannst du nun 32 oder 64-bit Prefixe anlegen, jetzt ist es noch wichtig zu Wissen, wie man in diesen arbeitet, dass ist eigentlich ganz logisch und folgt aus dem oben Erklärtem, wenn ich jetzt z.B. den Befehl winetricks im Prefix "prefix32" ausführen will, muss ich folgendes ins Terminal eingeben:
env WINEPREFIX="$HOME/prefix32" winetricks
Jetzt wird der Befehl winetricks im zuvor angelegten 32-bit Prefix ausgeführt, wenn ich einfach nur
winetricks
eingebe, wird das Programm im normalen .wine Prefix ausgeführt, welches bei dir ein 64-bit Prefix ist.
Gleiches gilt auch für .exe Dateien, wenn ich diese in einem speziellen Prefix ausführen möchte, muss ich folgendes eingeben:
env WINEPREFIX="$HOME/prefix32" wine start /UNIX "/Pfad/zur.exe"
Ich hoffe, das war nicht zuviel und es hilft in der Zukunft 😉