2010-12-09 64 views
0

我在編譯boost和mongodb。在windows上鍊接問題(boost)

我想64位版本,共享庫和動態鏈接到運行時。

Boost編譯時使用link=shared, runtime-link=shared, threading=multi(和其他一些)。 lib和dll文件的名稱如下:boost _ * - vc90-mt-1_41.dll

現在mongodb具有默認設置:/ MT(多線程靜態)。連接器需要libboost_*-vc90-mt-s-1_41.dll(注意額外的lib-s)增強庫。所以我改變了選項/MD(多線程DLL)和-s消失,但lib停留。我用/DBOOST_THREAD_USE_DLL /DBOOST_ALL_DYN_LINK試過了,但它沒有改變。鏈接器仍然在尋找靜態庫嗎?

請幫助:)

回答

1

BOOST_ALL_DYN_LINK應該做的伎倆。儘管如此,請確保從頭開始重建項目。

如果問題仍然存在,我想你需要告訴星號背後隱藏着什麼 - 也許有一個特定庫的錯誤。

+0

基本上,這沒有把戲。 (我也必須手動鏈接boost-date_time到boost-thread,並在mongodb scons文件中進行一些調整......) – tauran 2010-12-20 10:04:48