sql >> Databáze >  >> RDS >> Mysql

Přidejte a propojte knihovny mysql v souboru cmakelist.txt

Nejjednodušším způsobem by mohlo být najít (např. pomocí google) FindMySQL.cmake skript, který pracuje pro vás. Tento skript lze použít s find_package příkaz jako obvykle:

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})

(Názvy proměnných MYSQL_INCLUDE_DIR a MYSQL_LIB se může pro konkrétní skript lišit).

Není však obtížné ručně propojit knihovnu MySQL, protože znáte způsob výpočtu CFLAGS a LIBS.

Během fáze konfigurace (provádění cmake ) programy lze spouštět pomocí execute_process , pro přidání CFLAGS a LIBS pro konkrétní cíl použijte target_compile_options a target_link_libraries odpovídajícím způsobem:

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})



  1. Porovnání vrstev abstrakce databáze PHP a zásuvných modulů CRUD

  2. MySQL Používáte bezpečný režim aktualizace a pokusili jste se aktualizovat tabulku bez WHERE

  3. Jak znovu synchronizovat Mysql DB, pokud mají Master a slave jinou databázi zapouzdřit replikaci Mysql?

  4. Konstruktor SQLiteOpenHelper() není definován