• This forum has a zero tolerance policy regarding spam. If you register here to publish advertising, your user account will be deleted without further questions.

GMod-Server lädt die mysql.so.16 nicht

Drugsii

New Member
Guten Morgen zusammen.

Wir stehen vor einem Problem, und zwar haben wir einen Garrys Mod Server aufgesetzt, welchen wir aber nicht mit sqlite laufen lassen möchten sondern über die MySQL-Datenbank.

Dazu musste ein Modul in GMod eingefügt werden, welches hier herunter zu laden ist.

Haben wir gemacht, die Dateien in den Ordner der module verschoben und gestartet. Allerdings bringt er uns immer den Fehler
Code:
libmysql.so.16: cannot open shared object file: No such file or directory
.

Diese müsste aber richtig heruntergeladen und installiert sein. Woran kann das Problem liegen?

Serverinformation
OS: Debian 64bit

Grüße,
Drugsii

(falls dieses Thema doch eher ins SQL- oder Gameserver-Unterforum gepasst hätte bitte einfach verschieben, war mir unsicher. :))
 
Was heisst müsste?

Was sagt denn ein updatedb && locate libmysql? Wurde auf die Architektur geachtet (x86 vs amd64)?
 
Entschuldigung 'müsste' war falsch definiert.

Es ist Installiert dennoch gibt es ein Error.

Locate:

Code:
/usr/local/lib/mysql/libmysqlclient.so.16
/usr/local/lib/mysql/libmysqlclient.so.16.0.0
/usr/local/lib/mysql/libmysqlclient_r.so.16
/usr/local/lib/mysql/libmysqlclient_r.so.16.0.0
/usr/local/mysql/lib/libmysql.so.16
/usr/local/mysql/lib/libmysqlclient.a
/usr/local/mysql/lib/libmysqlclient.so
/usr/local/mysql/lib/libmysqlclient_r.so

libc.conf;

Code:
# libc default configuration
/usr/local/mysql/lib

Edit:

libmysqlclient-dev sowie mysql-client sind Installiert
 
Last edited by a moderator:
Installiere mal diese beiden Pakete via apt-get.

Code:
liblua5.1-sql-mysql-2
libmysqlclient16

is32-libs solltest du ja schon haben (wenn nicht, auch installieren).

Ich bin mir nicht sicher, wie GMod Lua implementiert hat. So wie ich Valve kenne, liefern die eigene Libs mit, um die Sprache im Server zu implementieren. Du kannst ja zuerst das Paket libmysqlclient16 installieren. Falls das damit nicht geht, dann mal nachsehen, was apt-get alles bei dem Paket "liblua5.1-sql-mysql-2" installieren will.

PS: Alternativ mal einen Symlink von der Datei "/usr/local/lib/mysql/libmysqlclient.so.16" in das Serververzeichnis legen. Ich nicht gerade eine saubere Lösung.
 
Last edited by a moderator:
libmysqlclient16 und is32-libs sind schon installiert.

Ich habe Probiert jetzt einfach mal das andere zu installieren (liblua5.1-sql-mysql-2) hat leider auch nicht den gewünschten Effekt erbracht.

Ein Link habe ich dannach auch erzeugt und siehe da es geht auch nicht :mad:

Langsam macht mich das echt wahnsinnig :confused:
 
Nur so als letzte Idee - was steht denn in der /etc/ld.so.conf? Steht der Pfad zu den libs da auch wirklich korrekt oder überhaupt drin?
 
ldd srcds_linux ==>

Code:
        linux-gate.so.1 =>  (0xf7763000)
        libtier0.so => not found
        libvstdlib.so => not found
        libm.so.6 => /lib32/libm.so.6 (0xf7730000)
        libdl.so.2 => /lib32/libdl.so.2 (0xf772c000)
        libpthread.so.0 => /lib32/libpthread.so.0 (0xf7713000)
        libc.so.6 => /lib32/libc.so.6 (0xf75cc000)
        /lib/ld-linux.so.2 (0xf7764000)

was steht denn in der /etc/ld.so.conf? Steht der Pfad zu den libs da auch wirklich korrekt oder überhaupt drin?

Siehe meinen 2 beitrag:

ibc.conf:

Code:
/usr/local/mysql/lib
 
Tja, das übliche Architektur-Problem.
Dein hyperdolles Game ist 32Bit und Dein Debian 64Bit, das passt nicht zusammen...
 
Ja das schon klar das es 32bit ist, aber die 32 libs sind ja auch Installiert, daher sollte es ja keine Probleme geben. Zumal ich das Game ja auh auf meinem vorigen Root hatte dieser ebenfalls mit 64Bit ausgestattet war.
Da hatte es auch geklappt.
 
Ich hab kein Binary in dem Linux-Paket des Addons gefunden. Zur Zeit hab ich auch keinen GMOD-Server installiert, wo ich die Binaries zu LUA suchen könnte. Wie gesagt, ich weiß immer noch nicht, ob LUA vom OS verwendet wird oder ob der Server seine eigenen Libs liefert. Sieh mal im Serververzeichnis unter "bin" nach. Im Modverzeichnis auch mal in "bin" reinschauen. Sind alles libs, die du mit ldd untersuchen kannst. Da müsste irgendeine bei sein, die für LUA zuständig ist.
 
Entschuldigung das ich mich so lange nicht melden konnte, es war nur Leider durch die Arbeit nicht möglich.


Ich hab kein Binary in dem Linux-Paket des Addons gefunden. Zur Zeit hab ich auch keinen GMOD-Server installiert, wo ich die Binaries zu LUA suchen könnte. Wie gesagt, ich weiß immer noch nicht, ob LUA vom OS verwendet wird oder ob der Server seine eigenen Libs liefert

Ich denke du meinst das: Orangebox/bin -> bild im Anhang (gmod.png)

und dann gibt es noch : orangebox/garrysmod/bin -> bild im Anhang (gmod1.png)

Ich habe dann mal die "lua_shared.so" mit ldd untersucht:


linux-gate.so.1 => (0xf7740000)
libsteam.so => not found
libtier0.so => not found
libvstdlib.so => not found
libm.so.6 => /lib32/libm.so.6 (0xf768e000)
libdl.so.2 => /lib32/libdl.so.2 (0xf768a000)
libpthread.so.0 => /lib32/libpthread.so.0 (0xf7671000)
/lib/ld-linux.so.2 (0xf7741000)
libc.so.6 => /lib32/libc.so.6 (0xf752a000)

Leider weiß ich nicht was ich noch Probieren soll das es klappt. :(


Edit:

Ach so und zu der Frage ob ich die beiden anderen Libs schon installiert habe muss ich leider nein sagen, da ich nicht raus finden konnte wie die Paket namen dieser beiden sind.
 

Attachments

  • gmod.png
    gmod.png
    8.9 KB · Views: 131
  • gmod1.png
    gmod1.png
    9.1 KB · Views: 128
Last edited by a moderator:
Wie wäre es mit dem Installieren der fehlenden Libs? Nochmal weise ich Dich nicht darauf hin...
 
@ joe

Edit:

Ach so und zu der Frage ob ich die beiden anderen Libs schon installiert habe muss ich leider nein sagen, da ich nicht raus finden konnte wie die Paket namen dieser beiden sind.

Habe ich wohl zuspät editiert und die 2 Seite nicht gesehen..
 
Last edited by a moderator:
Ich denke er meint diese beiden:

libstdc++.so.6 //Paket: lib32stdc++6
libgcc_s.so.1 //Paket: lib32gcc1

Lösche mal beide aus orangebox/bin. So werden die vom System verwendet.

So jetzt das große Problem: Wenn du Debian einsetzt, dann wird die Version von libgcc nicht aktuell genug sein

Code:
server@n017:~/serverfiles/teamfortress2/orangebox$ strings /lib/libgcc_s.so.1 | grep GCC
GCC_3.0
GCC_3.3
GCC_3.3.1
GCC_3.4
GCC_3.4.2
GCC_3.4.4
GCC_4.0.0
GCC_4.2.0
GCC_4.3.0
server@n017:~/serverfiles/teamfortress2/orangebox$ strings bin/libgcc_s.so.1 | grep GCC
GCC_3.0
GCC_3.3
GCC_3.3.1
GCC_3.4
GCC_3.4.2
GCC_4.0.0
GCC_4.2.0
GCC_4.3.0
GCC_4.4.0
GCC_4.5.0
 
Ich denke er meint diese beiden:

libstdc++.so.6 //Paket: lib32stdc++6
libgcc_s.so.1 //Paket: lib32gcc1
Nein, ich meine die Libs, welche von ldd als fehlend markiert sind.


Google faselt da etwas von Valve und Steam, aber wer glaubt schon Google...
 
@joe
wie gesagt die Paket namen kann ich leider nicht ausmachen,
weder über apt search noch direkt über die Debian Paket oder apt such Seite:confused:
 
Back
Top