Seite 1 von 1

Fehlermeldung von mysql-python auf debian(etch)

Verfasst: Sonntag 29. Juni 2008, 12:17
von Damaskus
Moin,
kennt jemand den folgenden Fehler auf einem Debian System.
Ich habe mysql-python für Python 2.5 installiert und nach dem "import _mysql" kommt folgende Fehleremeldung.
Python 2.5.2 (r252:60911, Jun 8 2008, 17:48:42)
[GCC 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import _mysql
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "build/bdist.linux-i686/egg/_mysql.py", line 7, in <module>
File "build/bdist.linux-i686/egg/_mysql.py", line 6, in __bootstrap__
ImportError: /root/.python-eggs/MySQL_python-1.2.2-py2.5-linux-i686.egg-tmp/_mysql.so: symbol __cmpdi2, version libmysqlclient_15 not defined in file libmysqlclient.so.15 with link time reference
Das einzigste was ich dazu gefunden habe ist ein MySql Bug in der Version 5.0.27 installiert ist bei mir allerdings 5.0.51a

Gruß
Damaskus

Verfasst: Sonntag 29. Juni 2008, 15:45
von Leonidas
Wie hast du es denn kompiliert? Debian bringt ja ein eigenes MySQL-Paket mit.

Hint: Man importiert nicht ``_mysql`` sondern ``MySQLdb``.

Verfasst: Montag 30. Juni 2008, 11:45
von Damaskus
Leonidas hat geschrieben:Hint: Man importiert nicht ``_mysql`` sondern ``MySQLdb``.
Ups... sry, hab ich ganz vergessen beim Arbeiten in der Konsole :)


Kompiliert hab ich als embedded. Mit angepassten Links auf die Struktur vom Forums Server. Was auch ohne Fehlermeldung gemacht wurde. Allerdings läuft der ganze build und install Prozess inzwischen über easy_install wovon ich nicht wirklich ein Freund bin und ich auch nicht wirklich weiss wo ich die durchgeführten Prozesse kontrollieren kann. Da ich keinerlei Logfile oder irgendwas vom Build erhalten habe und die Konsolen Ausgabe nicht viel mehr anzeigt als die ausgeführten Befehle und ein "erfolgreich" oder auch "nicht erfolgreich".

Gruß
Damaskus

Verfasst: Montag 30. Juni 2008, 12:57
von Leonidas
Damaskus hat geschrieben:Kompiliert hab ich als embedded.
Was meinst du mit "embedded"?

Jedenfalls sagt die Fehlermeldung dass die Shared Objects gegen die du es gelinkt hast nicht mit den Shared Objects zusammenpassen, die da sind. Da kann setuptools auch nichts dafür.

Verfasst: Montag 30. Juni 2008, 14:17
von Damaskus
Leonidas hat geschrieben:
Damaskus hat geschrieben:Kompiliert hab ich als embedded.
Was meinst du mit "embedded"?
Es gibt drei Varianten wie man MySQL einbinden kann
# embedded: link against the embedded server library
# threadsafe: use the threadsafe client
# static: link against a static library (probably required for embedded)

Leonidas hat geschrieben: Jedenfalls sagt die Fehlermeldung dass die Shared Objects gegen die du es gelinkt hast nicht mit den Shared Objects zusammenpassen, die da sind. Da kann setuptools auch nichts dafür.
Die benötigten Binaries etc für den Build Prozess holt sich setuptools direkt von der installierten Version von Mysql. Das ganze wird über die mysql_config, die bei der installation von Mysql angelegt wird, gesteuert.


Gruß
Damaskus

Verfasst: Montag 30. Juni 2008, 15:56
von Leonidas
Damaskus hat geschrieben:
Leonidas hat geschrieben:
Damaskus hat geschrieben:Kompiliert hab ich als embedded.
Was meinst du mit "embedded"?
Es gibt drei Varianten wie man MySQL einbinden kann
# embedded: link against the embedded server library
Hast du die überhaupt?

Verfasst: Montag 30. Juni 2008, 16:14
von Damaskus
Leonidas hat geschrieben:
Damaskus hat geschrieben:
Leonidas hat geschrieben:
Damaskus hat geschrieben:Kompiliert hab ich als embedded.
Was meinst du mit "embedded"?
Es gibt drei Varianten wie man MySQL einbinden kann
# embedded: link against the embedded server library
Hast du die überhaupt?
:?
War Müll was ich geschrieben hab!
Ich hab das ganze als threadsafe kompiliert.
Und die Variante hab ich auch auf dem Server. :wink:

Gruß
Damaskus

Verfasst: Montag 30. Juni 2008, 16:19
von mkesper
Gibt's einen Grund, warum du das nicht über apt-get bzw. aptitude installierst?

Verfasst: Montag 30. Juni 2008, 16:40
von Damaskus
mkallas hat geschrieben:Gibt's einen Grund, warum du das nicht über apt-get bzw. aptitude installierst?
Jup, weils für Debian Etch kein Paket für Python 2.5 gibt.

Gruß
Damaskus

EDIT:
Lösung des Problems:
Es gab einen falschen Eintrag in der mysql_config Datei und in der my.conf war ein Pfad nicht korrekt.