[問題] vc++ cannot open shared object file

看板C_and_CPP作者 (yshihyu)時間8年前 (2016/02/19 23:29), 8年前編輯推噓4(4015)
留言19則, 5人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) VC++ 我編譯後執行檔案出現 error while loading shared libraries: ?: cannot open shared object file: No such file or direct 這是DEBUG mode 會出現這樣 , 但是 Release mode 不會可以正常運行 這樣感覺是debug mode 編譯過程少編譯什麼dll檔案嗎? 因為我平常都用linux , linux 通常會顯示少了什麼so 檔案 , windows 有辦法知道少了哪個dll 嗎? 或是有什麼 tool 類似linux ldd 查詢 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 175.182.141.203 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1455895798.A.C3C.html

02/20 00:14, , 1F
推薦使用 Process Monitor 觀察 https://goo.gl/iExiSC
02/20 00:14, 1F

02/20 00:15, , 2F
猜測應該是少了 debug 版的某些 runtime DLL 才會這樣
02/20 00:15, 2F

02/20 00:51, , 3F
請問一下是什麼原因會造成缺少debug 需要的runtime dll
02/20 00:51, 3F

02/20 00:52, , 4F
因為我安裝vs2013 步驟都跟另台電腦一樣,另一台沒問題
02/20 00:52, 4F

02/20 03:26, , 5F
有用其他library?
02/20 03:26, 5F

02/20 03:56, , 6F
depends22_x64 ... 我用這查看發現少了都是vc要有的dll
02/20 03:56, 6F

02/20 03:57, , 7F
例如 vcruntime140.dll, 那悶這dll 感覺應該安裝vs2013 要有
02/20 03:57, 7F

02/20 03:58, , 8F
有第三方lib , 可是不是缺第三方的dll,,
02/20 03:58, 8F
※ 編輯: yshihyu (175.182.141.203), 02/20/2016 04:00:28

02/20 11:15, , 9F
我先確認一下,你是拷貝debug .exe到其他電腦跑嗎?
02/20 11:15, 9F

02/20 11:16, , 10F
缺的東西可以用dumpbin看 但是沒辦法知道在哪個檔案
02/20 11:16, 10F

02/20 11:16, , 11F
dumpbin就是linux的ldd
02/20 11:16, 11F

02/20 15:03, , 12F
debug mode 執行後出現少了 vcrumtime140d.dll
02/20 15:03, 12F

02/20 15:03, , 13F
我去下載回來安裝又出現另外
02/20 15:03, 13F

02/20 15:04, , 14F
無法找到輸入點... 可是另外一台電腦可以跑
02/20 15:04, 14F

02/20 15:04, , 15F
那悶是什麼軟體把 vcruntime140d.dll 裝進去?
02/20 15:04, 15F

02/20 18:14, , 16F
後來又安裝 vs2015 才可以~感覺是少了2015 runtime lib
02/20 18:14, 16F

02/20 18:15, , 17F
可是我記的另台電腦我只安裝 vs2013 就會有2015 runtime
02/20 18:15, 17F

02/20 18:23, , 18F
vs2013 怎麼可能會有 vs2015 的 runtime...
02/20 18:23, 18F

02/21 01:38, , 19F
2013 年出版的產品會安裝 2015 年的產品... 額 ...
02/21 01:38, 19F
文章代碼(AID): #1MnpJsmy (C_and_CPP)