我已經搜索了高和這個答案的低。我曾嘗試對Stack和其他網站上發佈的類似問題提出建議。我的工具鏈由一臺帶有Windows 7,Visual Studio 2010,opencv 2.4,qt 4.8和boost的x64機器組成。我使用CMake配置了我的所有項目,它可以找到所有這些庫幷包含並創建我的Visual Studio項目。我編譯了兩個版本的boost,一個32位版本的命令行版本,放在\ boost \ boost_1_47_0 \ lib \ win32中,還有一個64位編譯在Windows SDK v7.1 64位編譯器中,並存儲在\提升\ boost_1_47_0 \ LIB \ 64。除了boost之外,項目中的所有內容都可以很好地編譯。我得到一個編譯錯誤:鏈接與提升,VS2010和CMake的錯誤
fatal error LNK1104: cannot open file 'libboost_filesystem-vc100-mt-1_47.lib'
作爲提醒,CMake的是處理我所有的聯並正確定位此lib和它添加到Visual Studio項目。我可以通過查看Properties-> Linker-> Command Line來驗證這一點。在這裏,除了代表其他庫文件,它列出:
"C:\Tools\boost\boost_1_47_0\lib\x64\boost_filesystem-vc100-mt-1_47.lib"
"C:\Tools\boost\boost_1_47_0\lib\x64\boost_program_options-vc100-mt-1_47.lib"
"C:\Tools\boost\boost_1_47_0\lib\x64\boost_date_time-vc100-mt-1_47.lib"
"C:\Tools\boost\boost_1_47_0\lib\x64\boost_thread-vc100-mt-1_47.lib"
我可以通過手動添加我的升壓\ boost_1_47_0 \ LIB \ x64的目錄屬性 - >連接器 - >常規 - >附加庫制止這種錯誤依賴。這編譯沒有錯誤。然而,當我去運行應用程序,我遇到了,告訴我一個系統錯誤:
The program can't start because boost_filesystem-vc100-mt-1_47.dll is missing from your computer. Try reinstalling the program to fix this problem.
在這種/ X64目錄中,我有:
boost_filesystem-vc100-mt-1_47.dll
boost_filesystem-vc100-mt-1_47.lib
libboost_filesystem-vc-100-mt-1_47.dll
任何有識之士將是令人難以置信的讚賞。謝謝!
相似或等同於這樣一個問題:HTTP:/ /stackoverflow.com/q/6468681/417197? –
是的,這似乎是與其他問題相比,自動動態鏈接相同的問題。 – legalize