您配置的gnc gcc编译器搜索路径中找不到可执行文件。

45

我的问题是 code::blocks 给了我一个错误信息,说找不到 gnc gcc 编译器的搜索路径中的可执行文件。虽然我不知道这是什么意思。另外,我也打出了一些代码:

#include <iostream>
 using namespace std;

 int main(void) {
    cout <<"Hello World" <<endl;

    return 0;
 }

我无法在code::blocks上构建或运行它。我应该怎么做?

我上网查找答案,但是那些回答对我来说都太难了。在我安装Visual studios express 2013之前,我曾经使用过code::blocks。但是Visual studios也没有正常工作,每次尝试打开它时都会要求我修复或卸载。因此,我删除了它以及code::blocks。现在我重新安装了code::blocks,但还是不能正常工作。

编译器的这个问题占用了我所有的时间,我无法练习编程,因为我无法让任何编译器正常工作。我需要帮助,请。

10个回答

107

我猜你已经安装了 Code::Blocks,但尚未安装或设置 GCC。 根据你关于 Visual Studio 的评论,我假设你使用的是 Windows;如果你在不同的平台上,则设置GCC的步骤可能会类似但不完全相同。

首先,您需要下载 GCC。有很多不同的版本;个人而言,我使用 64 位版本的 TDM-GCC。这个设置可能比您想要的更复杂,因此您可以选择 32 位版本或只需在此处获取预配置的 Code::Blocks/TDM-GCC 设置(这里)

完成设置后,启动 Code::Blocks。您不需要创建项目或编写任何代码;我们只是在这里设置一些东西或检查您的设置,具体取决于您选择如何安装 GCC。

进入 设置 菜单,然后在侧边栏中选择 全局编译器设置,并选择 工具链可执行文件 选项卡。确保 编译器的安装目录 文本框与您安装 GCC 的文件夹匹配。对我而言,这是 C:\TDM-GCC-64。您的路径将有所不同,这完全没问题;只需确保文本框中的路径与您安装的路径相同。仔细注意 Code::Blocks 显示的警告提示:此文件夹必须具有包含所有相关 GCC 可执行文件的 bin 子文件夹。如果您查看文本框显示的文件夹并且在那里没有 bin 子文件夹,则可能指定了错误的安装文件夹。

现在,在同一 工具链可执行文件 屏幕中,逐个检查每个 程序文件 框中显示的文件名是否正确。你需要以下内容的某种变化:

  • C编译器:gcc.exe(我的显示为x86_64-w64-mingw32-gcc.exe
  • C++编译器:g++.exe(我的显示为x86_64-w64-mingw32-g++.exe
  • 动态库链接器:g++.exe(我的显示为x86_64-w64-mingw32-g++.exe
  • 静态库链接器:gcc-ar.exe(我的显示为x86_64-w64-mingw32-gcc-ar.exe
  • 调试器:GDB/CDB debugger: Default
  • 资源文件编译器:windres.exe(我的显示为windres.exe
  • 构建程序:make.exe(我的显示为mingw32-make.exe

请注意,所有这些文件都在“编译器安装文件夹”框中显示的文件夹的bin子文件夹中。如果您找不到这些文件,则可能指定了错误的文件夹。即使文件名不完全匹配也没关系,不同的GCC版本可能具有不同前缀的文件名,就像我的设置一样。

完成后,点击OK。如果您愿意,可以重新启动Code::Blocks,以确认更改即使在崩溃时也会保留(我偶尔会出现Code::Blocks崩溃并忘记自上次启动以来更改的任何设置的情况)。

现在,您应该已准备好了。尝试重新运行您的代码片段。您需要将int main(void)更改为int main(),但其他所有内容都看起来不错。尝试构建和运行它,看看会发生什么。它应该可以成功运行。


我做了所有的事情,然后创建了一个项目,选择了我新配置的编译器。当我在构建选项中查看“Make Commands”时,它仍然有来自另一个编译器的命令,并且使用其他编译器进行编译。 - Mert Mertce
谢谢,非常好,但是我按照您建议的所有步骤操作后,仍然出现了相同的警告:“在您的...中找不到可执行文件”,直到我点击工具链可执行选项卡中的自动检测按钮,问题才永久解决! - gyousefi

42

只需打开设置 -> 编译器,并点击重置默认值,它就会开始工作。


13

*如何下载和安装CodeBlocks*(我已经下载好了)


***如何解决CodeBlocks环境错误。

  1. 进入“设置”----“编译器”----“选择编译器”(GNU GCC编译器)。

  2. 然后选择“工具链可执行文件”。

  3. 现在,“(C:\Program Files (x86)\CodeBlocks\MinGW)”。

视频演示:https://youtu.be/Tb1VnXs60Lg


这个视频也非常有帮助:https://youtu.be/17RazgwROAg - john

8

我也遇到了这个错误,但我通过简单的步骤解决了这个问题。如果你想解决这个问题,请按照以下步骤进行:

第一步:首先启动代码块

第二步:点击菜单栏中的设置选项

第三步:然后点击编译器选项

第四步:现在,弹出一个窗口。在这个窗口中,选择“GNU GCC COMPILER

第五步:现在进入工具链可执行文件选项卡,并选择编译器安装目录,例如(C:\Program Files (x86)\CodeBlocks\MinGW\bin)

第六步:最后,点击确定

enter image description here

通过以上步骤,您可以轻松解决此错误。有时您不需要选择bin文件夹,只需选择(C:\Program Files (x86)\CodeBlocks\MinGW) 路径即可。但是某些系统可能无法使用此路径,因此您需要从C:/到bin文件夹中选择路径。

谢谢。


4

为此,您需要安装GNU GCC编译器的二进制文件,它包含在MinGW软件包中。您可以下载MinGW(并将其放置在C:/下),然后必须下载与gnu-c、c++相关的二进制文件,因此选择所需的软件包并在MinGW中安装它们。然后,在Code::Blocks中,进入“设置”,“编译器”,“工具链可执行文件”选项卡。在那里找到路径,设置为C:/MinGW。然后提到的错误将会消失。


谢谢。它启动了编译器。但是它显示“按任意键继续”,有什么问题吗? - Rajesh Maurya

3

1
在我的 Windows 7 64 位系统上运行良好。 - Al Mamun
@AlMamun 很好知道 :) - Divyanshu Kushwaha

2
首先,Code Blocks不是编译器,它只是一个集成开发环境。
因此,你必须首先显示编译器的路径(如果你没有编译器,你需要下载并安装一个,很容易找到。例如,GCC是一个很好的选择)。如果Code Blocks无法自动找到编译器的路径,你必须手动指定路径。
但是,当你安装时,Code Blocks可能会自动找到你的编译器。
享受吧!

1
这个简单的解决方案对我很有用。 http://forums.codeblocks.org/index.php?topic=17336.0 我遇到了类似的问题。请注意,我是 C++ 和 IDE 方面的入门者,这是我做的(经过一些研究): 当然,我下载了带编译器的版本,但它不起作用。这是我所做的: 1)转到上部的设置 2)点击编译器 3)选择重置为默认值。
希望这个方法有效。

1

我是一个彻底的新手,但我重新安装了CodeBlocks,结果出现了这些“在配置的搜索路径中找不到GNC GCC编译器文件可执行文件”的错误,我通过下载以下内容来解决问题:

codeblocks-20.03mingw-setup.exe

(重要提示:请确保文件下载名称中包含“mingw”,因为编译代码所需的编译器构建不会自动随主CodeBlocks编辑器软件下载而来,因为CodeBlocks已经假定您已经在计算机上安装了其他编译器,如Visual Studio 2019等。)

然后,当我创建一个新项目(控制台应用程序)并使用默认设置快速测试时。

它给我错误

所以我去到 设置 > 编译器 > 选择编译器设置为:GNU GCC编译器 > 点击“Tooolchain executables”选项卡 > 单击“自动检测” > 应该说“C:\Progam Files\CodeBlocks\MinGW” > 点击确定。

构建和运行简单的hello world代码。

应该可以工作!如果不行,请在C:\Program Files\CodeBlocks中查找“MingGW”并选择它。


0

这里有一个适用于Windows用户的简单方法。

  1. 卸载系统中现有的CodeBlocks。
  2. 重新启动系统。
  3. 前往http://www.codeblocks.org/downloads/26
  4. 下载codeblocks-16.01mingw-setup.exe文件。它包括来自TDM-GCC(版本4.9.2,32位,SJLJ)的GCC/G++编译器和GDB调试器。

安装了那个,但是出现了编译器错误。在设置中路径为C:/MINGW。点击自动检测,它会设置正确的路径C:\Program Files (x86)\CodeBlocks\MinGW。 - gaoithe

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