MySQL 5.5 Ubuntu 12.10 - kein Lazarus Support

Rund um die LCL und andere Komponenten
olissongs
Beiträge: 19
Registriert: Sa 2. Feb 2013, 16:59

MySQL 5.5 Ubuntu 12.10 - kein Lazarus Support

Beitrag von olissongs »

Hallo,

habe gerade wieder Pascal entdeckt und wollte nach langer Delphi-Abstinenz wieder anfangen mit Lazarus 1.04 zu arbeiten. Habe aber festgestellt, dass die MySQL Unterstützung ziemlich bescheiden hinterher hinkt.

Habe bisher keine einfache Lösung gefunden, um mit MySQL zu arbeiten, auch über ODBC Umweg auf Ubuntu war ich bisher nicht erfolgreich.

In der Hoffnung nicht der einzige Linux-User mit aktueller Distribution zu sein, gibt es hier vielleicht schon pragmatische einfache Lösungen um die Komponenten für eine aktuelle MySQL 5.5.x zu verwenden.
Gibt es evtl. Quellcode zum anpassen?

Hoffe auf "den" entschedienden Tipp, um wieder mit Pascal arbeiten zu können.

Grüße
Oli

mse
Beiträge: 2013
Registriert: Do 16. Okt 2008, 10:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
CPU-Target: x86,x64,ARM

Re: MySQL 5.5 Ubuntu 12.10 - kein Lazarus Support

Beitrag von mse »

Für Pascal geht auch das da:
http://sourceforge.net/projects/mseide-msegui/

Hat super DB-Komponenten.

Martin

Benutzeravatar
theo
Beiträge: 10873
Registriert: Mo 11. Sep 2006, 19:01

Re: MySQL 5.5 Ubuntu 12.10 - kein Lazarus Support

Beitrag von theo »

olissongs hat geschrieben: Habe aber festgestellt, dass die MySQL Unterstützung ziemlich bescheiden hinterher hinkt.
Was heisst das genau? Ich bin auf OpenSUSE 12.2 (x86_64) und kann mit MySQL 5.5 arbeiten.
Zuletzt geändert von theo am Sa 2. Feb 2013, 18:39, insgesamt 1-mal geändert.

Benutzeravatar
theo
Beiträge: 10873
Registriert: Mo 11. Sep 2006, 19:01

Re: MySQL 5.5 Ubuntu 12.10 - kein Lazarus Support

Beitrag von theo »

mse hat geschrieben:Für Pascal geht auch das da:
http://sourceforge.net/projects/mseide-msegui/

Hat super DB-Komponenten.

Martin
Ach Martin, kannst die Werbung für dein Produkt hier einfach nicht lassen, oder?

olissongs
Beiträge: 19
Registriert: Sa 2. Feb 2013, 16:59

Re: MySQL 5.5 Ubuntu 12.10 - kein Lazarus Support

Beitrag von olissongs »

Hallo,

mein Problem mit Lazarus ist, das ich wohl einen spezifischen MySQL Connector brauche und bei Lazarus 1.0.4 fpc 2.6.0 nur der für MySQL 5.1 und für 5.5. wird angemeckert.
Warum braucht man eigentlich für jede 5.x einen separaten Connector? reicht da nicht einer für 4 und 5?

So wo bekomme ich jetzt diesen verflixten MySQL 5.5 Connector her? Kann ja nicht sein, das unter Linux keine aktuelle Distributionen für Pascal unterstützt werden oder wird Lazarus nur unter Windows verwendet?

@Marting
Also die Verbindung zur MySQL DB hat dein Tool wohl aufgebaut aber erst nach dem zweiten mal vorher gabs ne Access Violation. Die KomponentenReiter könnten etwas leserlicher gestaltetet werden, sehe immer nur 2,5 Buchstaben.

Achtzig
Beiträge: 90
Registriert: Mo 15. Okt 2007, 13:09
OS, Lazarus, FPC: Debian
CPU-Target: xxBit

Re: MySQL 5.5 Ubuntu 12.10 - kein Lazarus Support

Beitrag von Achtzig »

MySQL hat mich im Zusammenhang mit FPC/Lazarus auch schon ganz schön genervt, auch wenn ich keinerlei Komponenten diesbezüglich verwendet und nur die mysql50-Unit eingebunden hatte. Nach einem MySQL-Update ging gar nichts mehr und nach ein paar Experimenten und der Durchsicht dieser Unit, konnte ich es letztendlich aber glücklicherweise recht einfach lösen.

Hatte in /usr/lib einfach noch einen Verweis mit dem Namen der alten Bibliothek (die mysql50 erwartete) auf die neue Bibliothek angelegt. Und schon lief alles reibungslos. Hatte zwar zuerst massive Bedenken aber Fehler traten trotz umfangreicher Nutzung nicht auf.

Zu "oder wird Lazarus nur unter Windows verwendet?" kann ich sagen, daß ich das fast ausschließlich auf Debian verwende.

olissongs
Beiträge: 19
Registriert: Sa 2. Feb 2013, 16:59

Re: MySQL 5.5 Ubuntu 12.10 - kein Lazarus Support

Beitrag von olissongs »

Das klingt sehr vielversprechend was Du beschreibst, nur bin ich leider noch am anfang und weiss nicht so recht was ich jetzt anpassen muss damit 5.5 auch funktioniert.

in Usr/lib habe ich eine
libmysqlcppconn.so.5.1.1.0

entdeckt hört sich nach einer c++ lib an.

Bräcuhst ich nicht so was wie
libmysqlcppconn.so.5.aktuellinstallierteVersion? Wo bekomme ich die her, bzw. wie kann ich die erzeugen?

Oder gehts einfacher

Achtzig
Beiträge: 90
Registriert: Mo 15. Okt 2007, 13:09
OS, Lazarus, FPC: Debian
CPU-Target: xxBit

Re: MySQL 5.5 Ubuntu 12.10 - kein Lazarus Support

Beitrag von Achtzig »

Ich habe mich zwischenzeitlich von MySQL verabschiedet und nutze nur noch ganz UNIX-Like Textdateien. Außerdem noch ein paar Binärdateien für umfangreiche Listen. Wollte mein Programm unabhängiger machen und kann mir das leisten, da ich eine Webbasierte Systemverwaltung schreibe und keine großen Datenbanken dafür benötige.

Da Lazarus bei mir zuverlässig läuft, habe ich auch schon lange kein Update mehr installiert. In /usr/lib habe ich aber noch den Verweis drin:

libmysqlclient.so.15 -> libmysqlclient.so.16

libmysqlcppconn ist bei mir gar nicht zu finden.

Nachtrag: Ich hoffe das war der richtige Verweis. Ist schon wieder alles zwei Jahre her und ich bin nicht mehr der Jüngste :wink:

Noch ein Nachtrag: Ok, stimmt so. Habe mir eben die mysql50-Unit angesehen und da steht:

Code: Alles auswählen

{$IFDEF Unix}
  {$DEFINE extdecl:=cdecl}
  const
    mysqllib = 'libmysqlclient.'+sharedsuffix;
 
  {$IF DEFINED(mysql50)}
    mysqlvlib = 'libmysqlclient.'+sharedsuffix+'.15';
  {$ELSEIF DEFINED(mysql41)}
    mysqlvlib = 'libmysqlclient.'+sharedsuffix+'.14';
  {$ELSE}
    mysqlvlib = 'libmysqlclient.'+sharedsuffix+'.12';
  {$ENDIF}
 
{$ENDIF}

Benutzeravatar
theo
Beiträge: 10873
Registriert: Mo 11. Sep 2006, 19:01

Re: MySQL 5.5 Ubuntu 12.10 - kein Lazarus Support

Beitrag von theo »

Ich verstehe nicht ganz.

Ich habe Lazarus trunk (SVN) und dort habe ich die TMySQL55Connection (siehe Bild).
Lazarus 1.1 r40120M FPC 2.7.1 x86_64-linux-gtk 2

Die Library, welche dazu installiert sein muss, ist die libmysqlclient.so.18
Dateianhänge
mysql55.png

olissongs
Beiträge: 19
Registriert: Sa 2. Feb 2013, 16:59

Re: MySQL 5.5 Ubuntu 12.10 - kein Lazarus Support

Beitrag von olissongs »

Hallo,

hab jetzt unter
/usr/share/fpcsrc/2.6.0/packages/fcl-db/src/sqldb/mysql/mysqlconn.inc

so was ähnliches gefunden

Code: Alles auswählen

 
{$mode objfpc}{$H+}
 
interface
 
uses
  Classes, SysUtils,bufdataset,sqldb,db,dynlibs,
{$IFDEF Mysql51}
  mysql51dyn;
{$ELSE}  
  {$IfDef mysql50}
    mysql50dyn;
  {$ELSE}
    {$IfDef mysql41}
      mysql41dyn;
    {$ELSE}
      {$IFDEF mysql4} // temporary backwards compatibility for Lazarus
        mysql40dyn;
      {$ELSE}
        mysql40dyn;
      {$EndIf}
    {$EndIf}
  {$EndIf}
{$endif}
 
Const
{$IFDEF Mysql51}
    MySQLVersion = '5.1';
{$else}    
  {$IfDef mysql50}
    MySQLVersion = '5.0';
  {$ELSE}
    {$IfDef mysql41}
      MySQLVersion = '4.1';
    {$ELSE}
      {$IFDEF mysql4} // temporary backwards compatibility for Lazarus
        MySQLVersion = '4.0';
      {$ELSE}
        MySQLVersion = '4.0';
      {$EndIf}
    {$EndIf}
  {$EndIf}
{$endif}


das sieht dann bei mir so aus. Und das sagt mir gar nichts mehr.

ps: bin auch nicht mehr der Jüngste :)

olissongs
Beiträge: 19
Registriert: Sa 2. Feb 2013, 16:59

Re: MySQL 5.5 Ubuntu 12.10 - kein Lazarus Support

Beitrag von olissongs »

@theo

die ...18 habe ich installiert nur halt nicht die lazarus Versionen die du angegeben hast. Arbeite mit Lazarus 1.0.4 fpc 2.6.0
Bisher wollte ich keine anderen Versionen installieren, weil beim letzten Versuch etwas außerhalb der Ubuntuquellen, das mit dem fpc nicht mehr funtioniert hat.

Über SVN muss ich dann compilieren und so?
Zuletzt geändert von olissongs am Mo 4. Feb 2013, 12:01, insgesamt 1-mal geändert.

Benutzeravatar
theo
Beiträge: 10873
Registriert: Mo 11. Sep 2006, 19:01

Re: MySQL 5.5 Ubuntu 12.10 - kein Lazarus Support

Beitrag von theo »

Du brauchst mindestens FPC 2.6.1 dafür, an der Lazarus Version liegt es afaik nicht.
If you have FPC 2.6.1 or higher, MySQL 5.5 is also supported.

olissongs
Beiträge: 19
Registriert: Sa 2. Feb 2013, 16:59

Re: MySQL 5.5 Ubuntu 12.10 - kein Lazarus Support

Beitrag von olissongs »

Hallo,

bin jetzt dabei mir das ganze per svn zu installieren, sieht auch fast gut aus.

Habe folgende Probleme:
Lazarus ist aktuell und will den CompilerPfad zu fpc 2.7.1, der sollte eigentlich /usr/local/bin/fpc sein?
aber aus irgendeinen Grund wird immer der 2.6.0 Compiler gestertet (ohne den lies sich nichts kompilieren)

wenn ich fp in die konsole eintippe kommt die TextIde mit 2.7.1

wenn ich fpc auch usr/local/lib/fpc eingebe wird immer der alte Compiler gestertet

wie bekomme ich das richtig aufgelöst (Ubuntu 12.10 bzw LinuxMint14)

olissongs
Beiträge: 19
Registriert: Sa 2. Feb 2013, 16:59

Re: MySQL 5.5 Ubuntu 12.10 - kein Lazarus Support

Beitrag von olissongs »

ok, geb jetzt auf

zu viel gefuddel um ein Bischen auf ne aktuelle mysql Datenbank zu zugreifen
schade, das keine einfachen debs vorliegen

Benutzeravatar
theo
Beiträge: 10873
Registriert: Mo 11. Sep 2006, 19:01

Re: MySQL 5.5 Ubuntu 12.10 - kein Lazarus Support

Beitrag von theo »

Hast du die fpc.cfg angepasst? Die Pfade in Lazarus?

Ich habe auch versch. Versionen, und passe das mit einem Startscript für Lazarus an. Z.B. so:

Code: Alles auswählen

 #/bin/sh
cp ~/fpc.cfg ~/.fpc.cfg
 
export PATH=~/lazarus/fpc/bin/:$PATH
export PATH=~/lazarus/fpc/lib/fpc/2.7.1/:$PATH
 
~/lazarus/svn/lazarus --primary-config-path=~/.lazarus271
 
rm ~/.fpc.cfg

Antworten