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

使用mysqlcppconn8库构建C++应用时遇未识别编译错误求助

问题:基于MySQL xDevAPI的C++应用编译报错

环境信息

  • 开发方式:通过VSCode Remote-SSH扩展连接AWS Ubuntu 20.04服务器进行源码开发
  • 开发目标:使用MySQL xDevAPI的C++应用
  • 已安装依赖:执行sudo apt install libmysqlclient-dev libmysqlcppconn-dev安装开发库
  • 编译器版本:gcc (Ubuntu 7.5.0-6ubuntu2) 7.5.0、g++ (Ubuntu 7.5.0-6ubuntu2) 7.5.0

CMake配置代码

顶层CMakeLists.txt

set(MYSQL_CPPCONN_DIR "/usr/include/mysql-cppconn-8")

find_library(MYSQL_CLIENT_LIB mysqlclient)# "/usr/lib/x86_64-linux-gnu")
find_library(MYSQL_CPPCONN_LIB mysqlcppconn)# "/usr/lib/x86_64-linux-gnu")
find_library(MYSQL_CPPCONN8_LIB mysqlcppconn8)# "/usr/lib/x86_64-linux-gnu")

子目录CMakeLists.txt

add_executable(${TARGET_NAME} main.cpp DBServer.cpp)

set_target_properties(${TARGET_NAME} PROPERTIES
                        CXX_STANDARD 17
                        CXX_STANDARD_REQUIRED ON
                        CXX_EXTENSIONS OFF)
target_include_directories(${TARGET_NAME} PUBLIC "./include" ${MYSQL_CPPCONN_DIR})
target_link_libraries(${TARGET_NAME} PRIVATE sys core ${MYSQL_CLIENT_LIB} ${MYSQL_CPPCONN_LIB} ${MYSQL_CPPCONN8_LIB})

问题现象与已尝试方案

  • 现象:使用VSCode CMake Tools扩展编译时出现未识别错误
  • 已尝试的无效方案:
    • 从GitHub源码构建MySQLCppConn库
    • 更换全新的EC2实例
    • 移除代码中的C17嵌套命名空间namespace A::B::C(曾怀疑该语法触发/std:clatest导致问题)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 09:00:17