记录一下搞了一两个小时才搞定的环境问题!!!(环境配置绝对是程序员面对的第一座大山)
问题:vscode调试c++一直不能用,报错:VSCode:ERROR: Unable to start debugging. Unexpected ...... “-exec-run“. During ......code 0xc0000139
查询了好久,看了好多博客,最后解决了问题,在此进行总结:
先说结论:这是由于其他软件(目前已知的可能有anaconda、QT)的环境变量与 mingw64 的环境变量路径下的某些文件冲突了,看网上类似的解释应该是对应环境下都有 libstdc++-6.dll 文件,因此产生了混乱,由于我检查后发现是 anaconda 的一个环境变量导致的,因此我将c++环境的mingw64在环境变量path中进行上移(环境变量中path的上下代表着优先级!) 移动到anaconda的mingw64环境变量的上面,然后重启vscode问题就解决了。这个问题的原因大概率是不同环境变量下出现相同的dll文件导致的冲突,这时就需要着重检查下环境变量的问题了。
全部报错信息如下:
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).
解决看下图:
(别骂了,环境我配的细碎,你们知道怎么解决就行了,总之就是c++的mingw放到anaconda前面!)
当然,这可能会使得你在玩anaconda的时候出错,到时候再改啦,无所谓的啦,知道为什么就好的啦。
可能会有友友遇到QT的问题,和这个是一样的,暂时还没找到能正确处理这三个东西的环境变量的方法,如果有人知道也请Q我一下。
还有一点!有的同学也出同样的错误无法调试,可能是因为中文路径!,切记:有中文路径的也会报错!基本上看了这么多解决方法,无非就是这两点啦:1.中文路径 2.mingw冲突
现在就可以正常调试啦!