每當我在Visual Studio 2010中創建一個新項目並且首先不設置特定平臺(在我的情況下是x64)時,我將無法完成後續更改。 所以我用外部庫(編譯爲x64)設置所有需要的東西,然後按編譯它顯然失敗,因爲兩個平臺不匹配。如何強制Visual Studio 2010使用x64?
sfml-graphics-s-d.lib(RenderStates.obj) : fatal error LNK1112: module machine type 'x64' conflicts with target machine type 'X86'
注意到我使用Build-> Configuration-Manager-> Active projectplattform-> New ...-> x64將其更改爲x64。這就是我想要做的任何事情之前做同樣的事情,它的工作原理,但如果我這樣做之後,我得到了鏈接錯誤:
libcpmtd.lib(uncaught.obj) : fatal error LNK1112: module machine type 'x64' conflicts with target machine type 'X86'
的* obj文件可以從項目更改到項目(如COUT。 obj),從我的理解中,Visual Studio選擇了x86標準庫,並且在切換平臺之後不會改變它的決定。
所以對於這個問題:我如何強制VS使用新的指定x64平臺 - 也用於標準庫?
注:創建一個新的配置設置爲目標機器將自動更改鏈接器設置:MachineX64 (/MACHINE:X64)
注:如果不知道它的相關性,但我靜態鏈接的運行時庫Multithreaded-Debug (/MTd)
看起來像這個問題:http://stackoverflow.com/a/2850513/1262104 – Mesop
我已經做了他們在那裏的建議,但鏈接器發現某處.obj文件編譯爲x86而不是x64。 – Lukas
您確定*您正在使用x64 .libs嗎?在我看來,你正在嘗試使用x64可執行文件的x86庫。 – David