問題描述
蒟蒻VSCode默認在PowerShell中執行編譯、運行、調試等指令。
在跑一些cpp程序中,經常會出現明明編譯成功,卻無法正常運行的情況,偶爾會報錯形如
無法定位程序輸入點***於動態鏈接庫***
debug也不能正常運行,報錯形如
ERROR: Unable to start debugging. Unexpected GDB output from command "-exec-run". During startup program exited with code 0xc0000139.
The program 'XXX.exe' has exited with code 0 (0x00000000).
然而,在cmd裏卻能正常運行剛剛編譯好的exe,非常奇怪
原因
蒟蒻之前配置了VSCode+Anaconda,將conda加入了環境變量,其中有一項是
C:\Users\hujt\anaconda3\Library\mingw-w64\bin
其中含有一些c++的動態鏈接庫,與mingw的動態鏈接庫衝突
之前配置的時候,使得PowerShell啓動時自動加載Anaconda的配置,並且VSCode自動激活了conda環境,然後就引發衝突了
解決方案
一是參考 https://blog.csdn.net/Flag_ing/article/details/124521354 ,把上面那個環境變量刪掉,不過不知道之後跑Python的時候會不會出問題;
二是在環境變量列表中,將上面那個環境變量的次序移到mingw64之後;並且在PowerShell中取消自動激活,見 https://blog.csdn.net/Edisonleeee/article/details/90725318