MySQL mit CMake bauen

MacOS spzeifische Fragen: Carbon, Cocoa (developer.apple.com)
Antworten
mareb
Beiträge: 11
Registriert: Mi Mai 08, 2013 5:05 am

MySQL mit CMake bauen

Beitrag von mareb » Mo Jul 07, 2014 8:50 pm

Hallo,
zugegeben, ich habe gesehen, dass in diesem Forum fast nichts los ist.
Falls doch mal jemand hereinschaut: ich habe da eine Frage.

Ich versuche mit cmake ein Programm mit der MySQL-Library zu "maken". In meinem CMakeLists.txt habe ich den Eintrag:

Code: Alles auswählen

INCLUDE(../../cmake/FindMYSQL.cmake)
    IF(MYSQL_FOUND)
        ADD_LIBRARY(std3000c_mysql SHARED  cpdbp_mysql.c)
        SET(CP_NEEDINCLUDE   ${MYSQL_INCLUDE_DIR} )
        TARGET_LINK_LIBRARIES(std3000c_mysql ${MYSQL_LIBRARIES})
        INSTALL(TARGETS std3000c_mysql
            RUNTIME DESTINATION bin
            LIBRARY DESTINATION lib
            ARCHIVE DESTINATION lib)
    ENDIF(MYSQL_FOUND)
Die FindMYSQL.cmake Datei packe ich in den Anhang.
Die Library wird einfach nicht gefunden, obwohl sie am angegebenen Ort installiert ist.
Unter Linux geht das natürlich, jede Version.

Weiß da einer was zu?


Dateianhang geht ja garnicht. Deshalb hier im Text:

Code: Alles auswählen

# Find the native MySQL includes and library
#
#  MYSQL_INCLUDE_DIR - where to find mysql.h, etc.
#  MYSQL_LIBRARIES   - List of libraries when using MySQL.
#  MYSQL_FOUND       - True if MySQL found.

IF (MYSQL_INCLUDE_DIR)
  # Already in cache, be silent
  SET(MYSQL_FIND_QUIETLY TRUE)
ENDIF (MYSQL_INCLUDE_DIR)

FIND_PATH(MYSQL_INCLUDE_DIR mysql.h
  /usr/local/include/mysql
  /usr/include/mysql
)
SET(MYSQL_NAMES mysqlclient mysqlclient_r)
MESSAGE(STATUS "MYSQL_NAMES: ${MYSQL_NAMES}")
SET(MYSQL_NAMES mysqlclient_r mysqlclient)
FIND_LIBRARY(MYSQL_LIBRARY
  NAMES ${MYSQL_NAMES}
  PATHS /usr/lib /usr/local/lib
)

IF (MYSQL_INCLUDE_DIR AND MYSQL_LIBRARY)
  SET(MYSQL_FOUND TRUE)
  SET( MYSQL_LIBRARIES ${MYSQL_LIBRARY} )
ELSE (MYSQL_INCLUDE_DIR AND MYSQL_LIBRARY)
  SET(MYSQL_FOUND FALSE)
  SET( MYSQL_LIBRARIES )
ENDIF (MYSQL_INCLUDE_DIR AND MYSQL_LIBRARY)

IF (MYSQL_FOUND)
  IF (NOT MYSQL_FIND_QUIETLY)
    MESSAGE(STATUS "Found MySQL: ${MYSQL_LIBRARY}")
  ENDIF (NOT MYSQL_FIND_QUIETLY)
ELSE (MYSQL_FOUND)
  IF (MYSQL_FIND_REQUIRED)
    MESSAGE(STATUS "Looked for MySQL libraries named ${MYSQL_NAMES}.")
    MESSAGE(FATAL_ERROR "Could NOT find MySQL library")
  ENDIF (MYSQL_FIND_REQUIRED)
ENDIF (MYSQL_FOUND)

MARK_AS_ADVANCED(
  MYSQL_LIBRARY
  MYSQL_INCLUDE_DIR
  )

EDIT dani93: Titel (war: "Liest hier jemand, der C/C++ auf MacOS macht?")

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8492
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Liest hier jemand, der C/C++ auf MacOS macht?

Beitrag von Xin » Mo Jul 07, 2014 11:10 pm

mareb hat geschrieben:Hallo,
zugegeben, ich habe gesehen, dass in diesem Forum fast nichts los ist.
Falls doch mal jemand hereinschaut: ich habe da eine Frage.
Wieviel hier los ist, hängt immer davon ab, wie sich Leute beteiligen. ^^
mareb hat geschrieben: Ich versuche mit cmake ein Programm mit der MySQL-Library zu "maken". In meinem CMakeLists.txt habe ich den Eintrag:

Code: Alles auswählen

INCLUDE(../../cmake/FindMYSQL.cmake)
...
Die FindMYSQL.cmake Datei packe ich in den Anhang.
Die Library wird einfach nicht gefunden, obwohl sie am angegebenen Ort installiert ist.
Unter Linux geht das natürlich, jede Version.

Weiß da einer was zu?
Ich kompiliere C++ auf dem Mac, allerdings ziehe ich meine Linux-Entwicklung nur hinterher. Und stehe da vor einem ähnlichen Problem: Unter Linux läuft MySQL problemlos, unter'm Mac muss man frickeln und da habe ich noch nicht fertig gefrickelt.
Ich habe zwar ein (Linux-)Projekt habe, was MySQL nutzt, aber das nicht dringend unter MacOS benötige.

Und ich kenne mich mit CMake nicht aus, sondern schreibe mein eigenes Makefile. Bei dem CMake-File kann ich entsprechend auch nicht helfen.

Ich mir diese Seite herausgesucht, aber noch nicht abgearbeitet: http://www.malisphoto.com/tips/mysql-on-os-x.html. Von daher bist Du leider was zu früh dran für gute Tipps.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

mareb
Beiträge: 11
Registriert: Mi Mai 08, 2013 5:05 am

Re: Liest hier jemand, der C/C++ auf MacOS macht?

Beitrag von mareb » Di Jul 08, 2014 5:03 am

Vielen Dank für Deine Antwort! Dem Link gehe ich gleich mal nach.
Und ich freue mich, wenn wir uns zu diesem Thema (C/C++, MySQL + Mac) austauschen können.
Linux ist schon klasse für Software-Entwicklung...

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8492
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Liest hier jemand, der C/C++ auf MacOS macht?

Beitrag von Xin » Di Jul 08, 2014 9:37 am

Ich bin eigentlich weniger Mac-Entwickler als dass ich ein Mac-Book habe und damit auch meine Linux-Software übersetze. Bei der mysql-Library hakt es aber bei mir halt auch noch. Das sehe ich aber als gut lösbares Problem.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

mareb
Beiträge: 11
Registriert: Mi Mai 08, 2013 5:05 am

Re: Liest hier jemand, der C/C++ auf MacOS macht?

Beitrag von mareb » Mi Jul 09, 2014 9:49 pm

Xin hat geschrieben:Ich bin eigentlich weniger Mac-Entwickler als dass ich ein Mac-Book habe und damit auch meine Linux-Software übersetze. Bei der mysql-Library hakt es aber bei mir halt auch noch. Das sehe ich aber als gut lösbares Problem.
Hi,
also, für mich war das jetzt erstmal zu unübersichtlich mit dem mysql-Geschichte.
Auch der Apache ist schon installiert, irgendwer schrieb (ich glaub bei http://blog.mixable.de/apache-2-php-5-u ... tallieren/), dass man den vor-installierten Apache stoppen soll und über MacPorts einen weiteren installiert. Warum? Egal, erstmal MySQL.
Aber ich habe gemerkt, dass mir das gerade zuviel Zeit kostet. Zuviele Dinge, die ich tun oder lernen muß. Ich richte deshalb erstmal wieder eine VirtualBox mit Apache und MYSQL ein - unter Linux natürlich. Damit kenne ich mich aus und ich kann erstmal meine Arbeit wieder tun :-)

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8492
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Liest hier jemand, der C/C++ auf MacOS macht?

Beitrag von Xin » Do Jul 10, 2014 9:44 am

mareb hat geschrieben:also, für mich war das jetzt erstmal zu unübersichtlich mit dem mysql-Geschichte.
Mein aktueller Plan ist, die MySQL-Geschichte in ein SharedObject zu verbannen und das für die Produkte, die ich auf dem Mac bauen möchte zunächst nicht zu kompilieren. Aber auf kurz oder lang möchte ich auch MySQL auf dem Mac nutzen.
Derartiges muss ich eh tun, um nicht grundsätzlich die Abhängigkeiten aller Produkte installiert zu haben, wenn ich nur ein bestimmtes kompilieren möchte.
mareb hat geschrieben:Auch der Apache ist schon installiert, irgendwer schrieb (ich glaub bei http://blog.mixable.de/apache-2-php-5-u ... tallieren/), dass man den vor-installierten Apache stoppen soll und über MacPorts einen weiteren installiert. Warum? Egal, erstmal MySQL.
Ich habe vor einigen Jahren PHP installieren wollen und musste dafür auch einen eigenen Apache starten, weil der Apple-Apache viel zu alt war.
mareb hat geschrieben:Aber ich habe gemerkt, dass mir das gerade zuviel Zeit kostet. Zuviele Dinge, die ich tun oder lernen muß. Ich richte deshalb erstmal wieder eine VirtualBox mit Apache und MYSQL ein - unter Linux natürlich. Damit kenne ich mich aus und ich kann erstmal meine Arbeit wieder tun :-)
Apple ist schon was besonderes. ;-)
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Antworten