Najprostszym sposobem może być znalezienie (np. za pomocą google) FindMySQL.cmake
skrypt, który pracuje dla Ciebie. Ten skrypt może być używany z find_package
polecenie jak zwykle:
list(CMAKE_MODULE_PATH APPEND <directory-where-FindMySQL.cmake-exists>)
find_package(MySQL REQUIRED)
include_directories(${MYSQL_INCLUDE_DIR})
target_link_libraries(cgm ${MYSQL_LIB})
(Nazwy zmiennych MYSQL_INCLUDE_DIR
i MYSQL_LIB
może być inny dla konkretnego skryptu).
Ale nie jest trudno ręcznie połączyć się z biblioteką MySQL, znając sposób na obliczanie CFLAGS i LIBS.
Na etapie konfiguracji (wykonywanie cmake
) programy można uruchamiać z execute_process
, aby dodać CFLAGS i LIBS do określonych zastosowań docelowych target_compile_options
i target_link_libraries
odpowiednio :
execute_process(COMMAND mysql_config --cflags
OUTPUT_VARIABLE MYSQL_CFLAGS OUTPUT_STRIP_TRAILING_WHITESPACE)
execute_process(COMMAND mysql_config --libs
OUTPUT_VARIABLE MYSQL_LIBS OUTPUT_STRIP_TRAILING_WHITESPACE)
target_compile_options(cgm PUBLIC ${MYSQL_CFLAGS})
target_link_libraries(cgm ${MYSQL_LIBS})