无法构建32位Mongodb C ++驱动程序

时间:2013-11-10 15:24:35

标签: c++ mongodb

我正在尝试将Mongo DB C ++驱动程序编译为32位库。我怎么也不知道用什么开关,我已经看过每一个地方。我在x64环境中,因此我必须强制进行32位编译。

我需要32位驱动程序的原因是因为我编码的应用程序是32位,因此我不得不将Boost编译为32位。

如果我设法用32位编译驱动程序,我仍然可以连接到64位Mongo DB ???

如何将此事编译为32位?

以下是SCon日志中的错误:

/usr/bin/ld: skipping incompatible /home/zinglish/Projects/CPP/Grepho/libs/boost_1_54_0/dist/lib/libboost_thread.so when searching for -lboost_thread
/usr/bin/ld: skipping incompatible /home/zinglish/Projects/CPP/Grepho/libs/boost_1_54_0/dist/lib/libboost_thread.a when searching for -lboost_thread

基本上它不会编译因为它试图编译为x64但是升级库是x86 ...

1 个答案:

答案 0 :(得分:1)

好吧,我搜索了这个链接:SConstruct Documention,用于链接器和编译器交换机定制,并提出了解决方案。

我将这些添加到SConstruct文件中Environment变量的末尾:

CPPFLAGS=["-m32"],
LINKFLAGS=["-m32"]

希望将来可以帮助其他人