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

MongoDB C++库(LibMongoCxx 3.5.0)的正确CMake配置方法

解决MongoDB C++ 3.5.0的CMake废弃警告及正确库引入方式

针对你遇到的CMake警告和库引入问题,这里有一套完全符合新版本要求的配置方案,能彻底消除废弃警告并正确链接mongocxx库:

正确的CMake配置

替换你现有的CMakeLists.txt内容为以下代码:

cmake_minimum_required(VERSION 3.14)
project(test VERSION 0.1.0)

add_executable(${PROJECT_NAME} ${CMAKE_CURRENT_SOURCE_DIR}/src/main.cpp)

# 使用新的官方配置文件查找mongocxx
find_package(mongocxx REQUIRED)

# 直接链接官方提供的导入目标,无需手动处理头文件和库路径
target_link_libraries(${PROJECT_NAME} PRIVATE mongo::mongocxx_shared)

为什么之前的配置会出问题?

  1. 旧配置的废弃问题:你最初使用的libmongocxx是官方标记为废弃的旧配置入口,所以会弹出警告提示你切换到mongo::mongocxx_shared目标。
  2. 错误的目标查找方式:mongo::mongocxx_shared是一个CMake导入目标,不是独立的包,所以不能用find_package(mongo::mongocxx_shared REQUIRED)来查找——你需要先通过find_package(mongocxx REQUIRED)加载官方新配置,这个配置会自动注册mongo::mongocxx_shared目标。
  3. 无需手动处理路径:新的导入目标mongo::mongocxx_shared已经内置了所有必要的头文件包含路径、链接库以及编译选项,完全不需要再用include_directories或者${LIBMONGOCXX_*}这类旧变量。

验证有效性

用这个配置编译你的最小示例代码时:

  • CMake不会再弹出废弃警告
  • 编译器能自动找到mongocxx的头文件
  • 链接阶段会正确关联mongocxx的共享库

内容的提问来源于stack exchange,提问作者Herr von Wurst

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.29 17:04:05