ygopro unter xubuntu

illousion

Software-Overclocker(in)
Hi,

Ich habe mir fürs informatikstudium ein Chromebook zugelegt bei dem ich mithilfe von crouton ein Xubuntu laufen lasse.
Nun wollte ich um die freie Zeit zu vertrödeln YGOPRO installieren, welches auch eine native Linux version bietet.
Allerdings bin ich auf Folgendes Problem gestoßen:

Bevor man das Spiel starten kann muss man über das Terminal folgedes tun:
$ sudo apt-get install libevent-pthreads-2.0.5
$ sudo apt-get install libopenal1

Soweit so einfach, diese Pakete installiert und versucht YGOPRO zu starten, jedoch ist nichts passiert. Als ich selbiges über das Terminal versucht habe, bekam ich folgende Meldung:

/home/illousion/ygopro/ygopro64: error while loading shared libraries: libevent-2.0.so.5: cannot open shared object file: No such file or directory

Also wird libevent nicht gefunden. Diesen Fehler scheinen laut google auch viele andere zu haben, jedoch lies sich bei denen das Problem leicht mit einem Symlink beheben. Ich kenne mich leider nicht so gut mit den Befehlen des Terminals aus und kann einfach nicht finden wo zur hölle mein libevent gespeichert ist. Wie finde ich es und wie sieht der Befehl aus um den Link zu erzeugen? :huh:

Schon einmal danke für eure Antworten. :hail:
 
Zuletzt bearbeitet:
Laut Google soll sich das Problem mit dem Ausführen von "sudo ln -s /usr/local/lib/libevent-2.0.so.5 /usr/lib64/libevent-2.0.so.5" beheben lassen.
Ich schildere mal, wie ich vorgehen würde, um darauf zu kommen:
  1. Checken, ob libevent installiert ist ("dpkg -l | grep libevent") (das ist ein kleines L, kein großes i).
  2. Wenn es installiert ist, suche ich die Library. Hierzu aktualisiere ich mittels "sudo updatedb" die Suchdatenbank und frage sie danach mit "locate libevent-2.0.so.5" ab.
  3. Irgendwo außerhalb von /usr/lib/ (32Bit-System) oder /usr/lib64/ (64-Bit-System) müsste die Library liegen. Da das von dir genutzte Programm scheinbar aber in genau diesen Verzeichnissen sucht, erstellen wir mit dem obigen Befehl (auf einem 64-Bit-System) einen Symlink.

Ich habe leider kein *buntu zur Hand, hoffe aber, dass Gentoo hier nicht wesentlich abweicht ;)

MfG Jimini
 
(trusty)root@localhost:~# dpkg -l | grep libevent
ii libev4 1:4.15-3 amd64 high-performance event loop library modelled after libevent
ii libevent-core-2.0-5:amd64 2.0.21-stable-1ubuntu1.14.04.1 amd64 Asynchronous event notification library (core)
ii libevent-pthreads-2.0-5:amd64 2.0.21-stable-1ubuntu1.14.04.1 amd64 Asynchronous event notification library (pthreads)

(trusty)root@localhost:~# updatedb(trusty)root@localhost:~# locate libevent-2.0.so.5
/home/illousion/libevent-2.0.21-stable/libevent-2.0.so.5
/home/illousion/libevent-2.0.21-stable/.libs/libevent-2.0.so.5
/home/illousion/libevent-2.0.21-stable/.libs/libevent-2.0.so.5.1.9
/usr/local/lib/libevent-2.0.so.5
/usr/local/lib/libevent-2.0.so.5.1.9

(trusty)root@localhost:~# sudo ln -s /usr/local/lib/libevent-2.0.so.5 /usr/lib64/libevent-2.0.so.5ln: failed to create symbolic link '/usr/lib64/libevent-2.0.so.5': No such file or directory

Komme nicht weiter :/
 
Das Verzeichnis /usr/lib64 existiert?

Nope, not sure tho wie ich das da erstellen kann von wegen root rechten und so :D

Bin halt nen ziemlicher Anfänger mit Linux :/

Google hilft, Ordner erstellt :daumen:
Habe jetzt den Symlink erstellt mit sudo ln -s /usr/local/lib/libevent-2.0.so.5 /usr/lib64/libevent-2.0.so.5ln
Bekomme trotzdem noch die gleiche Fehlermeldung :c

/home/illousion/ygopro/ygopro64: error while loading shared libraries: libevent-2.0.so.5: cannot open shared object file: No such file or directory

Anscheinend such YGOPRO wo anders nach libevent :c
Habe auch versucht nen Symlink im YGOPRO verzeichnis zu erstellen, das hilft auch nicht :/

Ich bin ratlos :huh:
 
Zuletzt bearbeitet:
Verzeichnisse erstellen mit: mkdir
Befehle als root ausführen: sudo (z. B. sudo mkdir …)

Berechtigungen werden dir mit ls -l angezeigt, z. B.
ls -l /usr zeigt dir alle Daten in /usr inkl. der Berechtigungen im Format:
Berechtigungen Linkanzahl Besitzer Gruppe Dateigröße Datum Dateiname

So lange keine ACLs verwendet werden, ist alles ganz simpel:
rwx rwx rwx <- erste drei Zeichen gelten für den Besitzer, zweite drei Zeichen für die Gruppe, dritte drei Zeichen für "alle"
r = read
w = write
x = execute

Prinzipiell:
Hilfe via befehl --help oder befehl -h
Alternativ Handbuch via man befehl
 
"sudo ln -s /usr/local/lib/libevent-2.0.so.5 /usr/lib64/libevent-2.0.so.5"

In dem Befehl wird angenommen, das die lib unter "/usr/local" liegt. Unter "/usr/local" befinden sich aber in der Regel binaries, welche manuell (sprich nicht vom Packagemanager) installiert wurden.

Schau mal unter dem Pfad "/usr/lib/libevent-2.0.so.5" ob dort diese Datei liegt. Wenn ja solltest du diesen abgewandelten Befehl versuchen:

"sudo ln -s /usr/lib/libevent-2.0.so.5 /usr/lib64/libevent-2.0.so.5"

Edit:
Bitte dran denken, vorher den alten Link zu löschen: "sudo rm /usr/lib64/libevent-2.0.so.5"
 
Zuletzt bearbeitet:
Google hilft, Ordner erstellt :daumen:
Habe jetzt den Symlink erstellt mit sudo ln -s /usr/local/lib/libevent-2.0.so.5 /usr/lib64/libevent-2.0.so.5ln
Bekomme trotzdem noch die gleiche Fehlermeldung :c

/home/illousion/ygopro/ygopro64: error while loading shared libraries: libevent-2.0.so.5: cannot open shared object file: No such file or directory


Verzeichnis anlegen, Symlink erstellen.

Nicht sehr hilfreich.

"sudo ln -s /usr/local/lib/libevent-2.0.so.5 /usr/lib64/libevent-2.0.so.5"

In dem Befehl wird angenommen, das die lib unter "/usr/local" liegt. Unter "/usr/local" befinden sich aber in der Regel binaries, welche manuell (sprich nicht vom Packagemanager) installiert wurden.

Schau mal unter dem Pfad "/usr/lib/libevent-2.0.so.5" ob dort diese Datei liegt. Wenn ja solltest du diesen abgewandelten Befehl versuchen:

"sudo ln -s /usr/lib/libevent-2.0.so.5 /usr/lib64/libevent-2.0.so.5"

Edit:
Bitte dran denken, vorher den alten Link zu löschen: "sudo rm /usr/lib64/libevent-2.0.so.5"

Link gelöscht, aber unter /usr/lib ist libevent nicht :c

Libevent ist laut locate nur unter /usr/local/lib/libevent-2.0.so.5 und /usr/local/lib/libevent-2.0.so.5.1.9

Wie funktioniert das anscheinend überall nur bei mir nicht? :c
Ich wil doch nur Yugioh spielen xD

Edit: hilft evtl was in Richtung "LD_LIBRARY_PATH" weiter? und wie würde das dann genau aussehen?
 
Zuletzt bearbeitet:
Edit: hilft evtl was in Richtung "LD_LIBRARY_PATH" weiter? und wie würde das dann genau aussehen?

LD_LIBRARY_PATH ist eine Environment Variable, welche weitere Suchpfade für libs angibt.

Zum testen:
1. Ein Terminal öffnen.
2. "export LD_LIBRARY_PATH=/usr/local/lib/:$LD_LIBRARY_PATH".
3. Von diesem Terminal aus das Programm öffnen.
 
Zurück