1. 程式人生 > >opencv配置問題:error LNK2005:XXXX already defined in XXX.lib

opencv配置問題:error LNK2005:XXXX already defined in XXX.lib

在配置opencv2410+VS2010時,debug可以成功生成解決方案,release不行,錯誤如下:

錯誤 449 error LNK2005: "public: __int64 __thiscall std::basic_streambuf<char,struct std::char_traits<char> >::sputn(char const *,__int64)" ([email protected][email protected][email protected]@[email protected]@@[email protected]

@[email protected]) 已經在 opencv_core2410.lib(gpumat.obj) 中定義 G:\\……\msvcprt.lib(MSVCP100.dll)

根據上述參考文章得知:

The problem was because of different Run-Time library settings.

當前工程和Lib工程使用的Run-Time library 不一致。

檢查後發現,在release的配置屬性表裡,我在庫目錄里加入了static lib,純屬畫蛇添足,刪除即可。

相關推薦

opencv配置問題error LNK2005:XXXX already defined in XXX.lib

在配置opencv2410+VS2010時,debug可以成功生成解決方案,release不行,錯誤如下:錯誤 449 error LNK2005: "public: __int64 __thiscall std::basic_streambuf<char,struct

error LNK2005:XXXX already defined in XXX.lib

設定工程時,出現類似如下錯誤: msvcprtd.lib(MSVCP80D.dll) : error LNK2005: "public: __thiscall std::basic_string<char,struct std::char_traits<ch

libcmtd.lib(crt0dat.obj) : error LNK2005: _exit already defined in msvcrtd.lib(MSVCRTD.dll) 編譯錯誤解決方法

[問題描述] 今天在VC6下編譯G279軟體時,已編譯通過,連結時報一下錯誤: Linking...libcmtd.lib(crt0dat.obj) : error LNK2005: _exit already defined in msvcrtd.lib(MSVCRTD.d

Error LNK2005:exist already defined in msvcrt.lib(MSVCR100.dll)_LIBCMTD.lib 解決方案

 Project -- Setting -- C/C++ -- C++ Language Enable Run-Time Type Information(RTTI) 此項必須打勾! 但現在Debug版編譯ok,Release版編譯報錯: Linking... Crea

error LNK2005: __errno already defined in MSVCRTD.lib(MSVCR90D.dll)

Orignal url: http://blog.csdn.net/gxj1680/article/details/7239810 工程是vs2005編輯的ipmsg(從官網download的原始碼),但本地是vs2008的版本,編譯出現 1>LIBCMTD.lib(dbgheap.obj) : e

error LNK2005: __cinit already defined in libcmt.lib(crt0dat.obj)

用靜態庫去編譯,若出現下面錯誤:LIBC.lib(crt0dat.obj) : error LNK2005: __cinit already defined in libcmt.lib(crt0dat.obj)LIBC.lib(crt0dat.obj) : error LNK

Error LINK2005: already defined in libcmt.lib

這個錯誤是微軟設計錯誤,因此如果遇到這個錯誤,我們只能躲過這個連結錯誤。具體的辦法就是將那個提示出錯的庫放到另外一個庫的前面。另外選擇不同的C函 數庫,可能會引起這個錯誤。MS, C有兩種C函式庫,一種是普通的函式庫:LIBC.LIB,不支援多執行緒。另外一種是支援多執行緒

Already defined in LIBCMTD.lib

Additional Depencies:Nafxcwd.lib;Libcmtd.lib Ignore Specific Default Libraries:Nafxcwd.lib;Libcmtd.lib

[Visual Studio C++] [MFC 除錯錯誤]error LNK2005: "class std::...已經在 Multimediatimer.obj 中定義。

1.編譯問題描述: error LNK2005: "class std::basic_ofstream<char,struct std::char_traits<char> > Sim_Data_Write" ([email protected]@[email&

錯誤error LNK2005 解決方法

程式設計中經常能遇到LNK2005錯誤——重複定義錯誤,其實LNK2005錯誤並不是一個很難解決的錯誤。弄清楚它形成的原因,就可以輕鬆解決它了。 造成LNK2005錯誤主要有以下幾種情況: 1.重複定義全域性變數。可能存在兩種情況: A、對於一些初學程式設計的程式設計師,有時候會以為需要使用全域性變數的地方就

C++報錯error LNK2005: _main 已經在 1.obj 中定義

C++初學者可能會遇到這樣的報錯:error LNK2005: _main 已經在 1.obj 中定義。 這個報錯的意思是說你的當前工程裡定義了兩個main()主函式,在C++裡是不允許出現兩個入口的,即不能出現兩個main()主函式。 解決方法: 方法1:去掉一個主函

【C++】 Debug 版的 C/C++ Python 擴充套件模組連結錯誤Error LNK1104 cannot open file 'python27_d.lib

Debug 版的 C/C++ Python 擴充套件模組連結錯誤:Error LNK1104 cannot open file 'python27_d.lib' 環境配置 (1)python的lib 以及標頭檔案分別加到vc的include/lib directories中去。

關於maven項報[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rath

關於eclipse建立maven工後進行測試報[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?的解決辦法: 報錯資訊如下: [E

IAR編譯出錯Error[Pe165]: too few arguments in function call

先找出具體出現的檔案,然後把函式逐個註釋掉,編譯,找出相應出錯的函式。該錯誤是由於呼叫的引數少了導致的,即使某些引數在都中情況下無效,但也要加上去。例如gpio_init (PORTx portx, u8 n, GPIO_CFG cfg, u8 data),在呼叫時,當設定

main already defined in *.obj 解決方法

VC6如果想在stdafx.h中定義全域性變數,由於該標頭檔案會被include多次,所以,經常會出現以下經典的錯誤:already defined in StdAfx.obj。 解決方法:把該變數的定義int g_flag放到stdafx.cpp中,然後在使用的地方ext

already defined in *.obj“符號已定義”問題原理及解決方案

VC6如果想在stdafx.h中定義全域性變數,由於該標頭檔案會被include多次,所以,經常會出現以下經典的錯誤:already defined in StdAfx.obj。 解決方法:把該變數的定義int g_flag放到stdafx.cpp中,然後在使用的地方e

ajax或者url訪問時,帶了不標準字元後臺報錯The valid characters are defined in RFC 7230 and RFC 3986

網上查了很多辦法都無效, 暫定解決辦法: 將整個url用encodeURI(url)進行編碼,再進行訪問即可 例如:         var url='/index/saveFileToClient?url='+str;         url = encodeURI

VC6 出現“already defined in *.obj”錯誤的解決方法

通常在VC6 工程中某個標頭檔案中定義了全域性變數,而這個全域性變數要在很多個.cpp檔案中使用時,就會出現“……already defined in *.obj”的錯誤提示,解決方法是: 把錯誤提示中提到了全域性變數(或全域性函式)的定義放到一個.cpp檔案中。在其他.cpp檔案中使用時,宣告extern

Androidstudio重啟後錯誤Error:Unexpected lock protocol found in lock file. Expected 3, found 0.

Error:Unexpected lock protocol found in lock file. Expected 3, found 0.這個錯誤我遇到好多次了。因為本人筆記本在把I5升級到I