c/c++连接mysql数据库 cmake快速配置

mysql下载地址

新建一个简单的main.cpp文件

#include <cstdio>
#include "mysql.h"
int main() {
    MYSQL mysqlConnect;
    mysql_init(&mysqlConnect);
    if (!mysql_real_connect(&mysqlConnect, "127.0.0.1", "user", "password", NULL, MYSQL_PORT, NULL, 0)) {
        printf("failed\n");
        return -1;
    }
    mysql_select_db(&mysqlConnect, "testdb");
    mysql_query(&mysqlConnect, "SELECT * FROM user");
    // ...
    printf("end\n");
    return 0;
}

新建 CMakeLists.txt

cmake_minimum_required(VERSION 3.0.0)
project(mysqltest VERSION 0.1.0)

find_path(MYSQL_ROOT_DIR mysql)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(mysql REQUIRED_VARS MYSQL_ROOT_DIR)

add_executable(${PROJECT_NAME} main.cpp)
target_include_directories(${PROJECT_NAME} PRIVATE ${MYSQL_ROOT_DIR}/include)
target_link_directories(${PROJECT_NAME} PRIVATE ${MYSQL_ROOT_DIR}/lib)
target_link_libraries(${PROJECT_NAME} libmysql)

然后编译,不出意外应该会提示找不到 MYSQL_ROOT_DIR,此时设置为安装目录(有include, lib, bin的那个目录)就可以了

如果编译成功了但是跑不起来,检查是否缺少dll文件,一般来说需要这三个:libmysql.dlllibssl-1_1-x64.dlllibcrypto-1_1-x64.dll,后面两个可以在mysql的bin目录里拿到。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值