我正在尝试将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 ...
答案 0 :(得分:1)
好吧,我搜索了这个链接:SConstruct Documention,用于链接器和编译器交换机定制,并提出了解决方案。
我将这些添加到SConstruct文件中Environment
变量的末尾:
CPPFLAGS=["-m32"],
LINKFLAGS=["-m32"]
希望将来可以帮助其他人