2013-10-19 123 views
2

我有opencv 2.4.6安裝到我的機器,並希望使用它也安裝了visual studio 2013。使用opencv與視覺工作室2013

做常規配置後,我面臨着

1>opencv_core246d.lib(alloc.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1700' doesn't match value '1800' in main.obj 

和許多其他類似此錯誤。

我發現這question這是類似於我的問題。接受的答案告訴我改變opencv,但我無法找到visual studio 2013的opencv。第二個答案根本沒有幫助。

有沒有其他方法可以解決這個問題,還是應該將我的visual studio更改爲2012

在此先感謝。

回答

1

在visual studio 2013中,應該可以使用VS2012(VC11)的編譯器&鏈接器。
Configuration Properties>General>Platform Tool Set,你在下拉列表中有v110嗎?如果是的話,選擇它,你的可執行文件將被編譯並使用VS2012的工具鏈接。

+0

沒有一個解決方法,它沒有'v110',它有'v120(用於VS2013),v100(用於VS2010),v90(用於VS2008)'。 – smttsp

+0

在這種情況下,如果您可以使用VC100編譯opencv,那麼您也可以在您的方面使用VC100 – lolando

+0

或者,如果安裝Visual Studio 2012快速版,您應該能夠在Visual Studio 2013中選擇「v110」(我不是100%肯定) – lolando

2

我遇到了同樣的錯誤。你在64位機器上嗎?我按照關於安裝64位程序的opencv的說明解決了這個問題。

看看這個教程: http://www.anlak.com/using-opencv-2-4-x-with-visual-studio-2010-tutorial/

但是,如果你運行在發佈模式中的程序它只能!

+0

我已經解決了這個問題,刪除了與機器中的visual studio相關的所有內容,然後我重新安裝了VS2010。我有另一臺機器,其中有一個VS2010工作。我改變了在屬性> C/C++> CommandLine'和'Properties> Linker> CommandLine'下命令行的區別。然後它工作。由於檢查了很多說明,我深深地損壞了配置。謝謝你的方式。 – smttsp