खोजने का सबसे आसान तरीका हो सकता है (उदाहरण के लिए Google के साथ) FindMySQL.cmake
स्क्रिप्ट, जो आपके लिए काम करती है। इस स्क्रिप्ट का उपयोग find_package
. के साथ किया जा सकता है हमेशा की तरह कमांड:
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})
(चरों के नाम MYSQL_INCLUDE_DIR
और MYSQL_LIB
ठोस लिपि के लिए अलग हो सकता है)।
लेकिन CFLAGS और LIBS की गणना करने के तरीके को जानकर, मैन्युअल रूप से MySQL लाइब्रेरी से लिंक करना मुश्किल नहीं है।
कॉन्फ़िगरेशन चरण के दौरान (cmake
. का निष्पादन ) प्रोग्राम execute_process
के साथ चलाए जा सकते हैं , विशिष्ट लक्ष्य उपयोग के लिए CFLAGS और LIBS जोड़ने के लिए target_compile_options
का उपयोग करें और target_link_libraries
तदनुरूप :
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})