对于 Debian 10.0,可以按照以下步骤手动安装 mongocxx 3.0:
- 安装依赖项:
apt-get install -y cmake git build-essential libboost-all-dev libssl-dev libcurl4-openssl-dev
- 下载 mongocxx 3.0 源码:
wget https://github.com/mongodb/mongo-cxx-driver/archive/r3.0.3.tar.gz
tar -xzf r3.0.3.tar.gz
cd mongo-cxx-driver-r3.0.3
- 编译和安装 mongocxx 3.0:
mkdir -p build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local
make -j8
make install
这些步骤将从源码编译和安装 mongocxx 3.0,可以使用以下命令检查是否成功安装:
pkg-config --cflags --libs libmongocxx
如果安装成功,将显示 mongocxx 库的相关信息。
Q&A
make[1]: *** [CMakeFiles/Makefile2:860: src/mongocxx/test/CMakeFiles/test_driver.dir/all] Error 2
make: *** [Makefile:141: all] Error 2
这个错误可能是由于编译和链接 mongocxx 测试代码时出现问题而导致的。可以尝试使用以下方法解决该错误:
- 清除以前的构建文件和缓存:
rm -rf build/
rm -rf CMakeCache.txt
确保已经安装了所有必要的依赖项,包括 OpenSSL、libcurl 和 Boost 库。
- 可以尝试使用更少的 CPU 核心重新编译 mongocxx,例如:
make -j4
如果仍然遇到问题,请尝试使用以下命令重新生成构建文件并重新编译 mongocxx:
cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/local -DBUILD_SHARED_LIBS=OFF -DBSONCXX_POLY_USE_BOOST=1
make -j4
make install
这些额外的选项将关闭共享库的构建,启用 Boost-Polyfill(如果需要),并从源代码重新构建 bsoncxx 和 mongocxx 库。如果仍然遇到问题,那……此贴也没办法233333,只能百度看看,具体情况具体分析了