因此,我有一個使用外部庫的Visual Studio 2010項目,並且爲了在沒有LNK2005的情況下編譯它,我不得不在鏈接器設置中與庫的順序進行週轉。如何忽略LNK2005&LNK1169?
我知道它在發佈模式下很好地編譯,但出於某種原因,我無法在調試時將它編譯爲LNK錯誤。
有沒有辦法通常忽略LNK2005,並告訴鏈接器只是使用他遇到的第一個?
謝謝!
//編輯:這裏是一些特殊問題的輸出錯誤。但是我已經試着用不同的方式解決這個問題,每個解決方案都給我提供了不同的鏈接器問題因此,我正在尋找通用的解決方案忽略LNK2005
Error 7 error LNK2005: "private: __thiscall type_info::type_info(class type_info const &)" ([email protected]@[email protected]@@Z) already defined in Libcmtd.lib(typinfo.obj) ...\msvcprtd.lib(MSVCP100D.dll)
Error 8 error LNK2005: "private: class type_info & __thiscall type_info::operator=(class type_info const &)" ([email protected]@[email protected]@@Z) already defined in Libcmtd.lib(typinfo.obj) ...\msvcprtd.lib(MSVCP100D.dll)
Error 9 error LNK2005: _exit already defined in Libcmtd.lib(crt0dat.obj) ...\msvcprtd.lib(MSVCP100D.dll)
Error 10 error LNK2005: __invalid_parameter already defined in Libcmtd.lib(invarg.obj) ...\msvcprtd.lib(MSVCP100D.dll)
...
Error 37 error LNK1169: one or more multiply defined symbols found
我不知道你在說什麼。 GNU ld沒有這些「LNK2005」和「LNK1169」。 – 2010-11-03 07:52:11
你能告訴我們一些你得到的錯誤信息嗎? – Chubsdad 2010-11-03 07:54:39
對不起,添加了我在Visual Studio上工作的信息 – Mat 2010-11-03 07:55:19