我试图将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,但是boost库是x86 ...
好吧,我搜索了以下链接:用于链接器和编译器开关定制的SConstruct Documentation,并提出了一个解决方案。
我将它们添加到Environment
SConstruct文件中变量的末尾:
CPPFLAGS=["-m32"],
LINKFLAGS=["-m32"]
希望这对以后的人有帮助
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句