1

I am attempting to compile the Mongo DB C++ Drivers as 32bit libraries. How ever I don't know what switch to use, I have looked every where. I am on an x64 environment so I have to force 32 bit compilation.

The reason why I need 32 bit drivers is because the application I am coding is 32 bit and thus I had to compile Boost as 32 bit too.

If I do manage to compile the driver in 32 bit, will I still be able to connect to a 64 bit Mongo DB???

How do I do compile this thing to 32 bit?

Here's the error from the SCon log:

/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

Basically it won't compile because it's trying to compile as x64 but the boost libs are x86...

4

1 に答える 1

1

さて、私はこのリンクを検索しました:リンカとコンパイラスイッチのカスタマイズのためのSConstruct ドキュメントそして解決策を思いつきました。

これらをEnvironmentSConstruct ファイルの変数の末尾に追加しました。

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

うまくいけば、それは将来誰かを助けるでしょう

于 2013-11-10T17:32:23.743 に答える