mySQL 5.6 (libmysql.dll kann nicht geladen werden)
mySQL 5.6 (libmysql.dll kann nicht geladen werden)
Hallo,
bin ganz neu im Forum. Ich hoffe ihr habt ein paar nützliche Tipps.
Ich verwende Win10 (64) und habe den MySQL 5.6 Server installiert (Server version: 10.1.9-MariaDB). Da gab es schon mal Schwierigkeiten wegen der Portverwendung von Win10.
Die Datenbank läuft nun, aber ich bekomme beim connecten der Datenbank einen Fehler, dass die libmysql.dll nicht geladen werden kann. Diese dll habe ich aber aus dem MySQL-Installationsverzeichnis schon herauskopiert und in das System32-Verzeichnis von Windows kopiert.
Ich benutze Lazarus 1.4.4 und der Connector für MySQL 5.6 ist auch enthalten.
Hat jemand eine Idee, was noch getan werden muss, dass die dll erkannt wird? Stehe echt ein bissl auf dem Schlauch jetzt und komme net weiter. War vorher mit Win7 unterwegs, da lief es prima.
Danke im Voraus.
bin ganz neu im Forum. Ich hoffe ihr habt ein paar nützliche Tipps.
Ich verwende Win10 (64) und habe den MySQL 5.6 Server installiert (Server version: 10.1.9-MariaDB). Da gab es schon mal Schwierigkeiten wegen der Portverwendung von Win10.
Die Datenbank läuft nun, aber ich bekomme beim connecten der Datenbank einen Fehler, dass die libmysql.dll nicht geladen werden kann. Diese dll habe ich aber aus dem MySQL-Installationsverzeichnis schon herauskopiert und in das System32-Verzeichnis von Windows kopiert.
Ich benutze Lazarus 1.4.4 und der Connector für MySQL 5.6 ist auch enthalten.
Hat jemand eine Idee, was noch getan werden muss, dass die dll erkannt wird? Stehe echt ein bissl auf dem Schlauch jetzt und komme net weiter. War vorher mit Win7 unterwegs, da lief es prima.
Danke im Voraus.
- af0815
- Lazarusforum e. V.
- Beiträge: 6209
- Registriert: So 7. Jan 2007, 10:20
- OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
- CPU-Target: 32Bit (64Bit)
- Wohnort: Burgenland
- Kontaktdaten:
Re: mySQL 5.6 (libmysql.dll kann nicht geladen werden)
Gib mal die Dll in das Verzeichnis, wo deine Exe vom Programm steht.
Vor allen kontrollier auch mal win32/win64. Wenn du ein Win64 Programm machst, dann brauchst du auch die DLLs in Win64 Version, für Win32 Programm natürlich die Win32 DLLs.
Vor allen kontrollier auch mal win32/win64. Wenn du ein Win64 Programm machst, dann brauchst du auch die DLLs in Win64 Version, für Win32 Programm natürlich die Win32 DLLs.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
Re: mySQL 5.6 (libmysql.dll kann nicht geladen werden)
Hallo, danke für die Antwort.
Die dll habe ich im system32-Verzeichnis des os und auch im Programmverzeichnis meiner exe. Die Fehlermeldung bleibt die Gleiche. Die dll ist aus dem x64-Package des MySQL 5.6.28 Installers.
Ist zum verrückt werden.
Die dll habe ich im system32-Verzeichnis des os und auch im Programmverzeichnis meiner exe. Die Fehlermeldung bleibt die Gleiche. Die dll ist aus dem x64-Package des MySQL 5.6.28 Installers.
Ist zum verrückt werden.
- af0815
- Lazarusforum e. V.
- Beiträge: 6209
- Registriert: So 7. Jan 2007, 10:20
- OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
- CPU-Target: 32Bit (64Bit)
- Wohnort: Burgenland
- Kontaktdaten:
Re: mySQL 5.6 (libmysql.dll kann nicht geladen werden)
Und du kompilierst für win64 in Lazarus ?
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
Re: mySQL 5.6 (libmysql.dll kann nicht geladen werden)
Hallo af0815,
eigentlich nicht. In den Projekteinstellungen ist eingestellt, dass eine Win32-GUI-Anwendung erzeugt wird.
eigentlich nicht. In den Projekteinstellungen ist eingestellt, dass eine Win32-GUI-Anwendung erzeugt wird.
-
- Beiträge: 6079
- Registriert: Do 21. Sep 2006, 07:51
- OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
- CPU-Target: AVR,ARM,x86(-64)
- Wohnort: Dessau
- Kontaktdaten:
Re: mySQL 5.6 (libmysql.dll kann nicht geladen werden)
Win32 GUI Anwendung entscheidet nur darüber ob GUI oder Kommandozeile, nicht ob 32 oder 64bit.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/
Re: mySQL 5.6 (libmysql.dll kann nicht geladen werden)
Wie kann ich das prüfen? Es sollte schon eine 32-bit Anwendung sein. Kann mann auch beides erzeugen?
-
- Beiträge: 1100
- Registriert: Di 5. Aug 2008, 09:37
- OS, Lazarus, FPC: Windows ,Linux,FreeBSD,Dos (L trunk FPC trunk)
- CPU-Target: 32/64,PPC(+64), ARM
- Wohnort: Eindhoven (Niederlande)
Re: mySQL 5.6 (libmysql.dll kann nicht geladen werden)
jeanP hat geschrieben:Wie kann ich das prüfen? Es sollte schon eine 32-bit Anwendung sein. Kann mann auch beides erzeugen?
Mit mitgelieferten Tools: versuche ob FPC's "objdump -D <datei>" eine Assemblerlistung erzeugt. Eine exe Typ Indikator ist als erste Zeile in den Output enthalten.
Mit "objdump -i" kann man sehen welche Formate unterstützt sein. (typisch 32-bit Typen für 32-bit Versionen, und 64-bit für 64-bit Versionen)
Re: mySQL 5.6 (libmysql.dll kann nicht geladen werden)
Hallo marcov,
sorry, ab jetzt verstehe ich nur noch Bahnhof.
Mit mitgelieferten Tools: versuche ob FPC's "objdump -D <datei>" eine Assemblerlistung erzeugt. Eine exe Typ Indikator ist als erste Zeile in den Output enthalten.
Mit "objdump -i" kann man sehen welche Formate unterstützt sein. (typisch 32-bit Typen für 32-bit Versionen, und 64-bit für 64-bit Versionen)
sorry, ab jetzt verstehe ich nur noch Bahnhof.
-
- Beiträge: 90
- Registriert: Fr 2. Nov 2007, 13:32
- OS, Lazarus, FPC: Win (L 1.0 FPC 2.6.0)
- CPU-Target: 32Bit
- Wohnort: Ulm
Re: mySQL 5.6 (libmysql.dll kann nicht geladen werden)
Für eine 64Bit dll braucht man auch ein 64Bit Programm, das diese Datei auch laden kann.
Compilereinstellungen --> Konfiguration und Ziele --> Ziel-Betriebssystem (-T) = "Win64" und Ziel-CPU-Familie (-P) = x86_64
Compilereinstellungen --> Konfiguration und Ziele --> Ziel-Betriebssystem (-T) = "Win64" und Ziel-CPU-Familie (-P) = x86_64
Re: mySQL 5.6 (libmysql.dll kann nicht geladen werden)
Hallo Thomas, danke für die Erklärung.
Bei mir stehen diese auf '(Voreinstellung)'. Welche 'Voreinstellung' ist das dann? Habe das vorher noch nicht berücksichtigt mit Win7 und die Anwendungen sind gelaufen.
Wird dann das Betriebssystem ausgelesen und die entsprechende Einstellung automatisch getroffen?
Muss ich dann jeweils eine *.exe für 32-bit und eine für 64-bit erzeugen oder gibt es auch die Möglichkeit, eine exe zu erstellen, die mit beiden bit-Varianten läuft?
Bei mir stehen diese auf '(Voreinstellung)'. Welche 'Voreinstellung' ist das dann? Habe das vorher noch nicht berücksichtigt mit Win7 und die Anwendungen sind gelaufen.
Wird dann das Betriebssystem ausgelesen und die entsprechende Einstellung automatisch getroffen?
Muss ich dann jeweils eine *.exe für 32-bit und eine für 64-bit erzeugen oder gibt es auch die Möglichkeit, eine exe zu erstellen, die mit beiden bit-Varianten läuft?
- af0815
- Lazarusforum e. V.
- Beiträge: 6209
- Registriert: So 7. Jan 2007, 10:20
- OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
- CPU-Target: 32Bit (64Bit)
- Wohnort: Burgenland
- Kontaktdaten:
Re: mySQL 5.6 (libmysql.dll kann nicht geladen werden)
Normalerweise reicht es das du eine 32Bit Anwendung erzeugst. Dann die entsprechenden 32 Bit Komponenten installieren und es läuft auch auf 64 Bit windows.
Wenn du eine exe mit einem Texteditor öffnest oder Hexviewer, siehst du bei einer Win32
PE L
bei Win64
PE dt
am Anfang stehen. Damit kann man rasch prüfen was man für eine Exe vor sich hat. Mit objectdump aus den fpc Werkzeugen gehts genauso.
Wenn du eine exe mit einem Texteditor öffnest oder Hexviewer, siehst du bei einer Win32
PE L
bei Win64
PE dt
am Anfang stehen. Damit kann man rasch prüfen was man für eine Exe vor sich hat. Mit objectdump aus den fpc Werkzeugen gehts genauso.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
Re: mySQL 5.6 (libmysql.dll kann nicht geladen werden)
Hallo,
vielen Dank für die hilfreichen Tipps.
Es lag an der bit-Version. Lazarus scheint, wenn keine andere Einstellung getroffen wurde, eine 32-bit Anwendung zu erstellen.
Die libmysql.dll (32-bit) muss (so ist es zumindest bei mir) ins Stammverzeichnis von Lazarus kopiert werden. Ich hatte die dll ins Windows/System32-Verzeichnis kopiert als auch ins Programmverzeichnis meiner Anwendung, dass schaffte keine Abhilfe. Aber im Stammverzeichnis von Lazarus scheint es wohl zu funktionieren.
LG
vielen Dank für die hilfreichen Tipps.
Es lag an der bit-Version. Lazarus scheint, wenn keine andere Einstellung getroffen wurde, eine 32-bit Anwendung zu erstellen.
Die libmysql.dll (32-bit) muss (so ist es zumindest bei mir) ins Stammverzeichnis von Lazarus kopiert werden. Ich hatte die dll ins Windows/System32-Verzeichnis kopiert als auch ins Programmverzeichnis meiner Anwendung, dass schaffte keine Abhilfe. Aber im Stammverzeichnis von Lazarus scheint es wohl zu funktionieren.
LG
- af0815
- Lazarusforum e. V.
- Beiträge: 6209
- Registriert: So 7. Jan 2007, 10:20
- OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
- CPU-Target: 32Bit (64Bit)
- Wohnort: Burgenland
- Kontaktdaten:
Re: mySQL 5.6 (libmysql.dll kann nicht geladen werden)
jeanP hat geschrieben:... Aber im Stammverzeichnis von Lazarus scheint es wohl zu funktionieren. ..
Zur Designzeit ist die im Stammverzeichnis von Lazarus aktiv, zur Laufzeit die im Stammverzeichnis der App. IMHO meine Erfahrung.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
Re: mySQL 5.6 (libmysql.dll kann nicht geladen werden)
Hallo af0815,
wollte gerade die Korrektur hier eintragen, aber das hast du schon getan.
Genau das habe ich heute festgestellt, als ich eine andere Anwendung mit DB-Anbindung starten wollte (über die *.exe). Habe die libmysql.dll dann in das Programmverzeichnis kopiert und schon ging es.
LG
wollte gerade die Korrektur hier eintragen, aber das hast du schon getan.
Genau das habe ich heute festgestellt, als ich eine andere Anwendung mit DB-Anbindung starten wollte (über die *.exe). Habe die libmysql.dll dann in das Programmverzeichnis kopiert und schon ging es.
LG