You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Clion中使用MySQL Connector/C++遇链接错误求助

解决MinGW下MySQL Connector C++链接错误问题

错误根源

你使用的是MinGW编译器,但链接的是MySQL Connector C++中vs14目录下的MSVC编译版本库,两者的应用二进制接口(ABI)不兼容,导致链接阶段出现未定义引用错误。

解决步骤

1. 下载MinGW兼容的MySQL Connector C++

前往MySQL官方下载页面,选择与你MinGW架构(32/64位)匹配的Connector C++版本,确保下载包名称包含MinGW标识,不要选择VS/MSVC版本的安装包。

2. 修改CMakeLists.txt配置

将原配置中的路径替换为MinGW版本的Connector路径,示例配置如下:

cmake_minimum_required(VERSION 3.25)
project(server)

set(CMAKE_CXX_STANDARD 17)

# 替换为MinGW版本的Connector头文件路径
set(MYSQL_CONNECTOR_CPP_INCLUDE_DIR "C:\\Program Files\\MySQL\\MySQL Connector C++ 8.0\\include\\jdbc")  
# 替换为MinGW版本的Connector库文件目录(示例为lib64/mingw,以实际下载的路径为准)
set(MYSQL_CONNECTOR_CPP_LIBRARY_DIR "C:\\Program Files\\MySQL\\MySQL Connector C++ 8.0\\lib64\\mingw")  

include_directories(${MYSQL_CONNECTOR_CPP_INCLUDE_DIR})
link_directories(${MYSQL_CONNECTOR_CPP_LIBRARY_DIR})

add_executable(server main.cpp)

# MinGW环境下链接对应版本的库,直接写库名即可
target_link_libraries(server mysqlcppconn)

3. 重新编译验证

重新执行CMake生成项目文件,再进行编译即可解决链接错误。如果仍有问题,检查:

  • 库路径是否正确指向MinGW版本的库文件
  • 编译器架构(32/64位)与Connector版本是否完全匹配

内容的提问来源于stack exchange,提问作者muse0

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 21:53:20