我想編譯我的程序,所以它創建一個獨立的EXE。 其實我有2個問題:編譯靜態鏈接VS2015
我沒有去屬性 - > C/C++ - >代碼生成 - >運行時庫,並更改爲多線程(/ MT)。
我這樣做後,.exe文件的尺寸增加了,但是當我嘗試使用另一臺計算機上,錯誤「不能運行這個程序,你需要一個名爲DLL:msvcp140d.dll」
這是2個問題,我不明白爲什麼它要求我使用DLL的調試版本,因爲我正在編譯發行版本,我不明白爲什麼它要求我使用DLL,因爲我認爲他們是靜態鏈接/:
PS:我想編譯一個OpenCV3.0項目。我不知道它是否有幫助:/
編輯:一個問題已經解決了:我在發佈鏈接程序中使用我的程序使用MSVCP140d.dll中使用opencv_imgproc310d.dll。 現在我仍然遇到exe文件不是獨立的問題。它需要DLL才能正常工作。 (我剛剛上了我的VS,所以我有最新版本)。 謝謝
據我所知,你使用多線程的事實並不意味着你正在使用靜態運行時。這是另一回事。 –
http://stackoverflow.com/questions/20890458/compile-c-in-vs-without-requiring-msvcp120d-dll-at-runtime 我在這篇文章看到這個解決方案:/ –