Docs 菜单
Docs 主页
/ / /
C 驱动程序
/ / /

安装预构建的 MongoDB C 驱动程序库

在此页面上

  • 使用库包管理器进行跨平台安装
  • 使用 vcpkg 安装
  • 在 Linux 中安装
  • 基于 RedHat 的系统
  • 基于 Debian 的系统
  • 使用 Homebrew 在 macOS 上安装

libmongoclibbson库通常可通过 Homebrew 在常见 Linux 发行版macOS 的软件包管理存储库中找到。

注意

对于 Windows,建议改用 从源代码构建库 ,以最大限度地与本地工具链兼容。可以使用源代码库包管理工具(例如 Conan vcpkg (请参阅: 使用库包管理器进行跨平台安装 )。

警告

如果您安装并使用第三方打包程序提供的预构建二进制文件,则它可能会滞后于这些文档页面 ( 1.28 ) 中描述的库版本。 阅读这些页面时,请注意并记住您安装的版本。

对于最新版本的 C 驱动程序库,最好从源代码进行构建。

提示

另请参阅:

有关可用软件包的列表和通用参考,请参阅软件包安装参考。

各种库软件包管理器提供libbsonlibmongoc 作为可安装的软件包,包括 Conan vcpkg 。本节将详细介绍如何使用这些工具进行安装。

注意

本页不会详细说明如何开始使用 vcpkg 。为此,请参阅 vcpkg 入门

vcpkg 清单模式下 ,将所需的库添加到项目的vcpkg.json 清单文件中:

{
// ...
"dependencies": [
// ...
"mongo-c-driver"
]
}

当您使用 vcpkg 集成构建 CMake 项目并具有vcpkg.json清单文件时,vcpkg 将在继续配置阶段之前自动安装项目的依赖项,因此无需额外的手动工作。

vcpkg 经典模式下libbsonlibmongoc 可以分别通过名称libbsonmongo-c-driver 安装:

$ vcpkg install mongo-c-driver

(安装mongo-c-driver也会同时安装libbson 。)

当安装了libmongoclibbson软件包并且 vcpkg 已正确集成到您的构建系统中时,就可以导入所需的库了。

使用 CMake,可以使用标准配置文件包以及生成的IMPORTED目标:

CMakeLists.txt
find_package(mongoc-1.0 CONFIG REQUIRED)
target_link_libraries(my-application
PRIVATE $<IF:$<TARGET_EXISTS:mongo::mongoc_shared>,mongo::mongoc_shared,mongo::mongoc_static>)

注意

大型$<IF:$<TARGET_EXISTS...>:...>生成器表达式可用于根据find_package()命令中的可用形式切换libmongoc的链接类型。 libmongoc支持使用动态静态库类型进行构建,但 vcpkg 一次只会安装两种库类型中的一种。

使用 vcpkg 集成配置 CMake 项目只需在初始配置命令中设置 CMake 工具链文件即可:

$ cmake -S . -B _build -D CMAKE_TOOLCHAIN_FILE=$VCPKG_ROOT/scripts/buildsystems/vcpkg.cmake

安装libbsonlibmongoc的名称和过程因发行版而异,但通常遵循相似的模式。

以下 Linux 发行版提供libbsonlibmongoc软件包:

  • Fedora通过dnf

  • RedHat Enterprise Linux (RHEL) 7及更高版本以及基于 RHEL 7或更高版本的发行版,包括 CentOS、Rocky Linux 和 AlmaLinux(通过yum / dnf和 EPEL)。

  • Debian和基于 Debian 的发行版,包括Ubuntu和 Ubuntu 衍生品,通过 APT。

提示

另请参阅:

有关可用包和包选项的列表,请参阅:包安装参考。

在基于 RedHat 的 Linux 发行版(包括FedoraCentOSRocky LinuxAlmaLinux )中,C 驱动程序库可以与 Yum/DNF 一起安装。

注意

对于8或更高版本的 Fedora 和企业版 Linux,建议使用dnf命令代替任何yum命令。

重要

除 Fedora 之外:

C 驱动程序库仅在相应企业 Linux 发行版的7及更高版本中可用。 但是,C 驱动程序库在默认存储库中不可用,但可以通过启用 EPEL 存储库来获取。 这可以通过安装epel-release包来完成:

# yum install epel-release

epel-release 必须在尝试安装 C 驱动程序库之前安装(即无法在单个yum install命令中同时安装它们)。

要仅安装libbson ,请安装libbson-devel软件包:

# yum install libbson-devel

要安装完整的 C 数据库驱动程序 ( libmongoc ),请安装mongo-c-driver-devel

## (This package will transitively install libbson-devel)
# yum install mongo-c-driver-devel

要检查哪个版本可用,请参阅 https://packages.fedoraproject.org/pkgs/mongo-c-driver/mongo-c-driver-devel。

开发包(以-devel结尾)包括使用libbsonlibmongoc构建应用程序所需的文件。 要仅安装库而不安装开发文件,请安装libbsonmongo-c-driver-libs软件包。

在基于 Debian 的 Linux 发行版(包括 Ubuntu 和 Ubuntu 衍生品)中, libbsonlibmongoc可通过 APT 在发行版存储库中使用,并且可分别安装为libbson-devlibmongoc-dev

## Update repository information, if necessary:
# apt update

要仅安装libbson

# apt install libbson-dev

要安装libmongoc (这也会安装libbson ):

# apt install libmongoc-dev

要检查哪个版本可用,请运行apt-cache policy libmongoc-dev

开发包(以-dev结尾)包括使用libbsonlibmongoc构建应用程序所需的文件。 要仅安装库而不安装开发文件,请安装libbson-1.0-0libmongoc-1.0-0软件包。

如果使用的是 macOS 系统,则可以使用libmongoc libbsonHomebrew 安装 C 驱动程序库(包括 和 ) 包管理器,使用以下命令:

$ brew install mongo-c-driver

注意

Homebrew 不为libbsonlibmongoc提供单独的软件包。

提示

Homebrew macOS 默认不安装包管理器。有关安装 Homebrew 的信息,请参阅 Homebrew 安装文档页面

后退

从源代码构建 C 驱动程序库