- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已完全按照以下文档中的说明(包括构建 mongo-c-driver 的说明)进行操作:https://mongodb.github.io/mongo-cxx-driver/mongocxx-v3/installation/
我正在尝试构建提供的示例代码(使用 VS2015),为方便起见,我将复制粘贴:
#include <iostream>
#include <bsoncxx/builder/stream/document.hpp>
#include <bsoncxx/json.hpp>
#include <mongocxx/client.hpp>
#include <mongocxx/instance.hpp>
int main(int, char**) {
mongocxx::instance inst{};
mongocxx::client conn{ mongocxx::uri{} };
bsoncxx::builder::stream::document document{};
auto collection = conn["testdb"]["testcollection"];
document << "hello" << "world";
collection.insert_one(document.view());
auto cursor = collection.find({});
for (auto&& doc : cursor) {
std::cout << bsoncxx::to_json(doc) << std::endl;
}
}
我已经根据提供的项目设置指定了头文件和库包含目录。我还添加了 MONGOCXX_STATIC 和 BSONCXX_STATIC 预处理器定义。
最初我将以下库添加到链接器设置中:libmongocxx.lib;libbsoncxx.lib;mongoc-static-1.0.lib;bson-1.0.lib;
当编译失败时,我尝试使用静态 bson 库(不确定为什么文档建议使用非静态库?),所以我的输入库现在如下所示:libmongocxx.lib;libbsoncxx.lib;mongoc -static-1.0.lib;bson-static-1.0.lib;
尽管我尽了最大的努力,并疯狂地谷歌搜索,我还是得到了大约 2000 个 Unresolved external 问题,我已经复制并粘贴到下面的一个示例中:
libmongocxx.lib(distinct.obj) : error LNK2001: unresolved external symbol __imp_mongoc_read_prefs_new
它似乎来自 mongo c 驱动程序。我看过this SO article ,但我已经如上所述链接 mongoc-static-1.0.lib - 不幸的是,这篇文章中没有其他内容可以继续。编译器显然正在找到所述库(否则它会提示“未找到”错误),所以我只能认为我以某种方式错误地构建了库。
此时我还要提到,我已经使用非静态库和 dll 成功构建并运行了代码 - 但是,非常希望避免使用 dll,因此我想使用静态如果可能的话。
我已经阅读了好几遍安装说明,我印象最深的是:
If you need static libraries, be sure to use the --enable-static configure option when building libmongoc.
但是,这似乎只适用于在 Linux 中安装,我正在使用 CMake 在 Windows 中安装。我运行 CMake.exe -LH 以查看有哪些可用选项,希望找到有关静态库的信息,但没有成功。似乎没有构建静态库所需的选项,因为当我安装 mongo-c-driver 时,我成功获得了 bson-static-1.0.lib 和 mongoc-static-1.0 库。
我发现自己不知所措!任何帮助将不胜感激,干杯。
最佳答案
你解决问题了吗?我有类似的问题。但是,如果您使用较旧的驱动程序(如 mongoc 1.4、bson 1.4 和 mongocxx 3.0)似乎没问题,尽管它们只能支持 mongodb 3.2 及更早版本
关于c++ - Windows LNK2001 : unresolved external symbol __imp_mongoc_read_prefs_new 中的 Mongocxx,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42003413/
我已完全按照以下文档中的说明(包括构建 mongo-c-driver 的说明)进行操作:https://mongodb.github.io/mongo-cxx-driver/mongocxx-v3/i
我是一名优秀的程序员,十分优秀!