gpt4 book ai didi

c++ - 编译我的代码以通过 xcode 在 OSX 中使用 mongodb c 驱动程序

转载 作者:行者123 更新时间:2023-11-28 05:36:29 25 4
gpt4 key购买 nike

我正在尝试在 OSX(10.9.5) 上创建一个 C 应用程序,它将连接到 mongodb 并执行 CRUD 操作。我正在使用从以下位置下载的 1.3.5 版:https://github.com/mongodb/mongo-c-driver/releases/tag/1.3.5我成功地在我的系统上安装了 mongo。我正在制作我的应用程序,它将使用该库执行 CRUD 操作。我正在使用 Xcode 6.1.1 作为我的 IDEon osx。我在ide中给了合适的头文件路径,运行前没有任何警告或错误。我也给出了动态库的搜索路径,所以我认为链接也应该正常进行。但是,当我尝试运行时出现以下错误:

Undefined symbols for architecture x86_64:

"_bson_as_json", referenced from:

  _main in find.o   "_bson_destroy", referenced from:
_main in find.o "_bson_free", referenced from:
_main in find.o "_bson_new", referenced from:
_main in find.o "_mongoc_cleanup", referenced from:
_main in find.o "_mongoc_client_destroy", referenced from:
_main in find.o "_mongoc_client_get_collection", referenced from:
_main in find.o "_mongoc_client_new", referenced from:
_main in find.o "_mongoc_collection_destroy", referenced from:
_main in find.o "_mongoc_collection_find", referenced from:
_main in find.o "_mongoc_cursor_destroy", referenced from:
_main in find.o "_mongoc_cursor_next", referenced from:
_main in find.o "_mongoc_init", referenced from:
_main in find.o ld: symbol(s) not found for architecture x86_64 clang:error: linker command failed with exit code 1 (use -v to see invocation)

我哪里错了?

最佳答案

您似乎为 libmongoc-1.0.so 指定了动态库路径,但没有指定它所依赖的库 libbson-1.0.so。这两个库都是在您构建驱动程序时安装的,因此您应该能够指定一个额外的路径并且您的程序将正确链接。

关于c++ - 编译我的代码以通过 xcode 在 OSX 中使用 mongodb c 驱动程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38192614/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com