VSCode能編譯cpp,無法正常運行、調試,可能原因及解決方案(VSCode,anaconda,環境變量)

問題描述

蒟蒻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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章