c - C 上的 libmongoc-1.0.pc/MongoDB 出现问题

标签 c mongodb bson

我正在尝试将 C 代码连接到我的 mongoDB 数据库。 我在终端上写道:

sudo apt-get install libmongoc-1.0-0 #Everything OK
sudo apt-get install libbson-1.0 #Everything Ok

然后,我尝试使用 PKG_CONFIG_PATH 定义 bjson.h 和 mongoc.h。在这一步中,我可以正确找到并定义bson.h,因为我在/usr/lib64/pkgconfig中找到了libbson-1.0.pc,但找不到libmongoc-1.0.pc或libmongoc-1.0-0.pc! 所以,当我尝试时:

gcc read_mongo.c $(pkg-config --cflags --libs libbson-1.0)

就是不行!因为 gcc 没有找到 mongoc.h 库。 我也尝试在我的电脑上搜索 mongo.h,但一无所获。

我怎样才能得到它?我失去了一些东西吗?

最佳答案

正如你所说,read_mongo.c正在寻找(并且找不到)mongoc.h,而不是bson.h

答案可以在教程包配置中找到。

http://mongoc.org/libmongoc/current/tutorial.html#pkg-config

你的 gcc 行

gcc read_mongo.c $(pkg-config --cflags --libs libbson-1.0)
----------------------------------------------^

所需的 gcc 行(包含并链接到 libmongoc 而不是 libbson)

gcc -o read_mongo.c read_mongo.c $(pkg-config --libs --cflags libmongoc-1.0)
--------------------------------------------------------------^

关于c - C 上的 libmongoc-1.0.pc/MongoDB 出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51216900/

相关文章:

c - 使用 gcc 时 undefined reference

c# - 如何在 MongoDB C# Driver 2.0 中记录我的查询?

javascript - findOne 抛出未定义,即使数据在那里

java - 带有 ObjectID 的 Spring Data Mongo 自定义存储库查询

mongodb - 当 primitive.A 是 bson []interface 时,如何将 mongo-go-driver 的输出作为 bson 数组反序列化为 []interface{}

go - 无法使用 mongo-go-driver 解码驼峰式字段

C 奇怪的错误......把我的头发拉出来

c++ - 调试时看不到任何变量值

javascript - 如何使用 JavaScriptCore 从 C 调用 JavaScript 函数?

c++ - 使用 mongodb c++ 驱动程序查询嵌套的 BSON 文档