Mac OSX Lion上的MongoDB C驱动程序
我正在尝试为我的应用程序编写一个基于C的mongo db小客户端。让我首先说,我已经很久没有用C编程了,所以我面临的问题可能是一个非常基本的问题!我就是不能让我的代码编译:-) 我使用的是64位苹果MacBookPro(OSX Lion)。gcc是:Mac OSX Lion上的MongoDB C驱动程序,c,mongodb,gcc,C,Mongodb,Gcc,我正在尝试为我的应用程序编写一个基于C的mongo db小客户端。让我首先说,我已经很久没有用C编程了,所以我面临的问题可能是一个非常基本的问题!我就是不能让我的代码编译:-) 我使用的是64位苹果MacBookPro(OSX Lion)。gcc是: Target: i686-apple-darwin11 Thread model: posix gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)
Target: i686-apple-darwin11
Thread model: posix
gcc version 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2335.15.00)
我git克隆了,将git签出到0.6,然后运行make
make
make install
make test
测试运行正常,库正确安装在/usr/local/lib中/
使.h文件正确地转到/usr/local/include
然后我将一段代码复制粘贴到一个名为data.c的文件中,如下所示:
#include <stdio.h>
#include "mongo.h"
int main() {
mongo conn[1];
int status = mongo_connect(conn, "127.0.0.1", 27017);
return 0;
}
我做错了什么?mac-link上似乎出现了一个与静态库相反的问题。现在已为mac OS X(Lion)修复了Mongo-C-driver动态库构建,请参阅
也许这有帮助:不。奇怪的是,测试工作正常,但我的代码甚至没有使用相同的gcc进行编译:(测试的输出是否记录在某个地方?是的,测试已打开,并且我已使用static I get
ld:library not found for-lcrt0.o
gcc --std=c99 -I/usr/local/include -L/usr/local/lib -o data data.c -lmongoc
Undefined symbols for architecture x86_64:
"_mongo_connect", referenced from:
_main in ccjPPPVs.o
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status