Code::Blocks执行“mingw32-g++.exe失败”

3
昨天我打开了Code::Blocks,大约一个月没有使用它了,我正在写一些C++的测试代码。我成功编译了一些程序,然后突然出现了一个错误,我似乎无法解决:
--------------在asdfsdfsdgf中构建:调试(编译器:GNU GCC编译器)--------------- mingw32-g++.exe -Wall -fexceptions -g -c C:\Users\aharman\Documents\CPP\asdfsdfsdgf\main.cpp -o obj\Debug\main.o 在'C:\Users\aharman\Documents\CPP\asdfsdfsdgf'中执行'mingw32-g++.exe -Wall -fexceptions -g -c C:\Users\aharman\Documents\CPP\asdfsdfsdgf\main.cpp -o obj\Debug\main.o'失败。
以下是我的代码:
#include <iostream>

using namespace std;

int main()
{
    cout << "Hello world!" << endl;
    return 0;
}

我不记得对Code::Blocks相关的任何内容进行过任何更改,所以我不知道为什么它突然停止工作。我已经做了几个小时的研究,但就是找不到解决方案。当我放弃寻找答案时,创建线程总是最后的选择,因为似乎没有希望了。有人知道这里发生了什么吗?提前感谢。


它在另一个项目上能用吗?重新安装Code::Blocks,看看会发生什么。 - Eejin
那你清理一下工作区呢?(我相信这是IDE中的一个按钮) - Eejin
嗯...好像什么也没发生。另外,如果我按运行而不是构建,会出现“似乎这个项目还没有被构建。你想现在构建它吗?”当我点击是时,它尝试但无法构建它,并且一直弹出,直到我点击否为止。 - TheBeocro
好的,我会尝试使用 CodeLite。 - TheBeocro
太好了,CodeLite 运行良好。我想我现在会一直使用它。 - TheBeocro
显示剩余3条评论
8个回答

1
你只需要将文件重命名为 mingw32-g++C:\mingw64\bin => 找到一个以 -g++ 结尾的文件,确保保存当前名称,然后将其重命名为 mingw32-g++,这对我有用。

1

可能 Code::Blocks 没有在正确的位置查找。首先,我建议前往设置 - 编译器和调试器 - 工具链可执行文件。然后在编译器安装目录中点击自动检测。按下确定,然后再尝试一次。希望这可以帮到你。再见。


我已经做了那个,但它只选择了我已经选定的目录。 - TheBeocro

1
这些解决方案对我不起作用,所以经过几个小时的研究,我弄清楚了实际上出了什么问题。
mingw有两个目录,一个位于c:\MinGW,另一个位于c:\programme files(×86)\codeblocks\ MinGW。
所以你想要运行的脚本实际上是在code blocks目录中编译的,而编译器插件则在其他地方。
更改方式:转到“设置”>“编译器”,选择“工具链可执行文件”,并选择c:\programme files(×86)\codeblocks\ MinGW中的bin目录。
然后选择适当的扩展名gcc或mingw32-g++。
现在它将编译codeblock中的默认工作文件“Hello world”。
重新启动软件并再次打开您的项目以使其正常工作。

1
我的问题得到解决的方法是这样的:
我进入“设置”>“编译器”,选择“工具链可执行文件”,然后找到C编译器,点击目录并重新选择“mingw32-g++.exe”,然后点击“打开”。它给了我一个错误提示:“文件找不到,因为codeblocks需要的exe程序的名称和在文件夹'MinGW'中的文件名称可能不同,程序无法找到这些exe文件。”
我相信软件在寻找mingw32-g++.exe时遇到了问题,所以我只需要重新选择它即可。

0
所以解决我的问题的方法是这样的:
我进入“设置”>“编译器”,选择了“工具链可执行文件” 我找到了C编译器,点击了目录并重新选择了“mingw32-g++.exe”,然后点击“打开”,再次运行项目,它就可以正常工作了。
我相信软件在查找mingw32-g++.exe文件时遇到了问题,所以我只需要重新选择它即可。

0

我遇到了同样的问题,经过一番调试后,我理解了“动态库链接器”有错误的文件名路径。
解决方法:- 进入 设置 -> 编译器 -> 工具链可执行文件 -> 在 动态库链接器 中: 默认值实际上根本不存在于路径中。因此选择实际存在的一个。
因此,新的 动态库链接器 将会是 x86_64-w64-mingw32-g++.exe

这应该就可以解决问题了。


0

Codeblocks 20.03 nosetup32bit版本存在问题,bin文件夹中的g++.exe是64位的。

编辑:如果您的版本是win32,则最有可能的问题是g++可执行文件是x64位的。


0

尝试右键单击您的项目 > 属性 > 构建目标。查看标记为“构建目标文件”的框中,确保选择了正确的源文件。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接