我正在尝试编译我的C ++程序,但是当我按下“Build”按钮时,它会显示以下错误消息:
C:/蚋/ 2010 / bin中/../的libexec / GCC / i686的-PC-的mingw32 / 4.3.6 / ld.exe: 无法打开输出文件a.exe:无效 参数collect2:ld返回1退出 状态
这不是第一次这样做。当我经常编辑同一个项目并经常构建它时,它似乎最常做到这一点,几乎就像某些东西已被淹没,或过载,或某些东西。
我相信,我之前通过重新启动电脑修复了它,但每次发生这种情况时我都无法继续重启电脑。
我认为这只是一次性问题,但它一直在发生,所以我想我会寻求更多的帮助。
我发现另一个SO question,我认为它有与我相同的错误信息/问题。但是,当我尝试上述相关问题中列出的解决方案时,没有任何帮助。
还有其他人有这个问题吗?或者有人知道如何解决这个问题(除了每次都重新启动我的电脑)?
我也在jGrasp中开发,如果这有帮助的话。
编辑:我只想补充一点,我认为可能是我以前的可执行文件仍然在后台运行,但即使我关闭了我的IDE,它仍然不会让我删除可执行文件,因为它说它还在运行。
我检查了我的进程资源管理器以查看a.exe是否仍在运行,但我的进程中没有任何内容与jGrasp或a.exe有关
答案 0 :(得分:2)
我猜您的可执行文件仍在运行。这是我想到的唯一原因......我想最好是检查你的任务管理器(进程资源管理器是你的朋友;)。)。
答案 1 :(得分:0)
答案 2 :(得分:0)
因为.exe仍在运行。如果你在Windows上使用命令行del -f a.exe,如果你在linux上使用rm -rf ./a.out
答案 3 :(得分:0)
在Visual Studio Code中,转到“设置”->在搜索栏中搜索“清除先前的输出”,然后选中名为“清除先前的输出”的框。 :)
之所以发生这种情况,是因为您先前的输出已经在后台运行。 VS Code提供了一项功能,可以在每次运行时将其关闭。
答案 4 :(得分:0)
我有同样的问题,担心了几个小时。我禁用了我的 avg 防病毒软件,它起作用了。