![](/img/trans.png)
[英]Build the static Opencv library with multi-threaded debug DLL (/MDd) C runtime library
[英]Visual C++: Runtime Library of Release Mode as 'Multi-threaded Debug DLL'
在這里,我問我在通過“發布模式”構建 Visual C++ 代碼時收到 LNK2001 錯誤,即使我在“發布”和“調試”模式之間的所有配置設置都是相同的(至少我更改的那些已經通過'所有配置')。
我可以通過更改發布模式來解決這個問題:配置屬性 -> C/C++ -> 代碼生成 -> 運行時庫從“多線程 DLL (/MD)”到“多線程調試 DLL (/MDd)”。 這告訴我什么? 我做了什么奇怪的事情(從調試中獲取 Release 的運行時庫)? 或者這是否意味着我的“發布”配置是錯誤的?
我建議你可以參考鏈接器工具錯誤 LNK2001
如果在構建應用程序的調試版本時鏈接到發布模式庫。 類似地,如果您使用選項 /MTd 或 /MDd 或定義 _DEBUG 然后鏈接到發布庫,您應該會遇到許多潛在的未解決的外部問題,以及其他問題。 將發布模式構建與調試庫鏈接也會導致類似的問題。 要解決此問題,請確保在調試版本中使用調試庫,並在零售版本中使用零售庫。
就我而言,您正在以發布模式鏈接調試 DLL。 您應該確保在調試版本中使用調試庫,並在零售版本中使用零售庫。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.