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

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