1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

MySQL-Zugriff mit C++

Dieses Thema im Forum "OS X-Developer" wurde erstellt von Nighthawk, 04.06.07.

  1. Nighthawk

    Nighthawk Linsenhofener Sämling

    Dabei seit:
    16.12.06
    Beiträge:
    2.558
    Moin :)
    Ich schreibe hier in C++ ein Programm, wofür ich auch eine Datenbank brauche. MySQL soll es sein. Nun stellt sich mir die Frage, wie ich darauf zugreifen kann. Ich habe einen Wrapper für die MySQL-C-API namens MySQL++ gefunden, allerdings scheint mir das Teil zum Ersten völlig chaotisch zu sein und zum Zweiten läuft es anscheinend nicht ohne Umwege unter Mac OS X.

    Die Lösung müsste plattformunabhängig sein.
    Hat jemand einen Vorschlag?

    Gruß und Danke,
    Nighthawk
     
  2. tjp

    tjp Baldwins roter Pepping

    Dabei seit:
    07.07.04
    Beiträge:
    3.252
    Dann schreibe Dir Deinen eigenen Wrapper für die MySQL C Library, das geht ganz gut.
     
  3. Der Paule

    Der Paule Königsapfel

    Dabei seit:
    26.05.07
    Beiträge:
    1.200
    Hi,

    sag mal, womit schreibst du unter Mac C++?
    Ich mach das nur unter Windows, da ich noch keine passende IDE für Mac gefunden habe.

    mfg
    Paule
     
  4. Nighthawk

    Nighthawk Linsenhofener Sämling

    Dabei seit:
    16.12.06
    Beiträge:
    2.558
    TextEdit bzw. Xcode und g++ ;)

    Ja, dann werde ich wohl nicht ums selbstschreiben rumkommen. Naja, dann lern ichs immerhin - danke :)
     
  5. Der Paule

    Der Paule Königsapfel

    Dabei seit:
    26.05.07
    Beiträge:
    1.200
    Nur Konsole oder auch mit GUI?
     
  6. Hilarious

    Hilarious Gelbe Schleswiger Reinette

    Dabei seit:
    10.08.05
    Beiträge:
    1.759
    Xcode ist eine IDE. Da kompilierst Du auch mit Maus. ;)
     
  7. Der Paule

    Der Paule Königsapfel

    Dabei seit:
    26.05.07
    Beiträge:
    1.200
    Super muss ich mir anschauen.
    Ich schreib dir ne PM wenn ich noch fragen habe.

    Danke.


    Am besten beiden :D
     
  8. Hilarious

    Hilarious Gelbe Schleswiger Reinette

    Dabei seit:
    10.08.05
    Beiträge:
    1.759
    Für Xcode geht's bei Apple weiter.
     
  9. Nighthawk

    Nighthawk Linsenhofener Sämling

    Dabei seit:
    16.12.06
    Beiträge:
    2.558
    Hm, ich probiere es gerade, auf dem Mac zu kompilieren:
    Ich habe ihm aber verklickert, dass die mysql.h in /Library/MySQL/include/mysql liegt, trotzdem bekomme ich den Fehler.

    Hat jemand ne Idee?
     
  10. tjp

    tjp Baldwins roter Pepping

    Dabei seit:
    07.07.04
    Beiträge:
    3.252
    Ohne genaueren Angaben was Du gemacht hast, wird's schwierig. Die richtigen Includes
    Code:
    #include <mysql.h>
    // und nicht
    #include "mysql.h"
    
    verwendet?
     
  11. Nighthawk

    Nighthawk Linsenhofener Sämling

    Dabei seit:
    16.12.06
    Beiträge:
    2.558
  12. Nighthawk

    Nighthawk Linsenhofener Sämling

    Dabei seit:
    16.12.06
    Beiträge:
    2.558
    Hat das noch nie jemand gemacht? :(
     
  13. tjp

    tjp Baldwins roter Pepping

    Dabei seit:
    07.07.04
    Beiträge:
    3.252
    Doch, nur bei mir hat das funktioniert. Du mußt schon genauer beschreiben was Du macht, damit man sehen kann, wo die Fehler bei Dir auftreten. Ohne Sourcecode den man begutachten kann, ist das reines Schauen in die Kristallkugel.

    Verwendest Du Xcode?
    Update: Ja, tust Du.
    Ok, die von Dir verlinkte Beschreibung ist nicht ganz korrekt.
    Du mußt unbedingt die Include und Linker Pfade für "All Configurations" auswählen, anderfalls baut Dir Xcode erstmal die Debug Version und wenn Du die Option wie auf den Screenshots nutzt werden da die Pfade nicht benutzt. -> Fehler.

    Prüf das ganze nach.
     
    #13 tjp, 06.06.07
    Zuletzt bearbeitet: 06.06.07
  14. Nighthawk

    Nighthawk Linsenhofener Sämling

    Dabei seit:
    16.12.06
    Beiträge:
    2.558
    Ich meld mich mal wieder ;)
    Ich habe es dann doch noch geschafft... fragt mich nicht wie - auf jeden Fall meckert er nun nicht mehr, er könnte die mysql.h nicht finden.
    Nun möchte ich ein mysql_init machen, kompilieren geht auch, aber beim Starten kriege ich Folgendes zu sehen:

    Weiß jemand, woran es liegen könnte?
     
  15. MacApple

    MacApple Lord Grosvenor

    Dabei seit:
    05.01.04
    Beiträge:
    3.470
    Der Linker findet anscheinend die MySQL C-Library nicht. Du musst bei den Linkeroptionen auch angeben, dass gegen die MySQL C-Library gelinkt werden soll.

    MacApple
     
  16. Nighthawk

    Nighthawk Linsenhofener Sämling

    Dabei seit:
    16.12.06
    Beiträge:
    2.558
    Danke, aber die Pfadangaben müssten eigentlich stimmen o_O
    Code:
    g++ -I/Library/MySQL/include/mysql -L/Library/MySQL/lib/mysql main.cpp
    Mach ich irgendwas falsch?
     
  17. MacApple

    MacApple Lord Grosvenor

    Dabei seit:
    05.01.04
    Beiträge:
    3.470
    Mit -L gibst Du nur das Verzeichnis an, wo der Linker nach Libraries suchen soll. Du musst auch angeben, wogegen er linken soll. Das machst Du mit der Option -l (kleines L).

    MacApple
     
  18. Nighthawk

    Nighthawk Linsenhofener Sämling

    Dabei seit:
    16.12.06
    Beiträge:
    2.558
    Danke! :)

    Wäre es denn nun so richtig?

     
  19. MacApple

    MacApple Lord Grosvenor

    Dabei seit:
    05.01.04
    Beiträge:
    3.470
    Ja, ist so nun richtig. Du hast jetzt nur noch das Problem, dass die mysqlclient Library für PPC compiliert ist, Du aber wohl einen Intel-Mac hast?

    MacApple
     
    Nighthawk gefällt das.
  20. Nighthawk

    Nighthawk Linsenhofener Sämling

    Dabei seit:
    16.12.06
    Beiträge:
    2.558
    Hmm... Na gut, mal sehen, ob ich das auf die Reihe krieg.

    Auf jeden Fall vielen vielen Dank :)
     

Diese Seite empfehlen