无法从命令行编译c文件

标签 c gcc compilation cmd codeblocks

我刚刚开始使用 C 并下载了 CodeBlocks gcc 编译器。现在一切都工作正常,即直到最近我都可以创建简单的源代码并从命令行或通过 CodeBlocks 编译 .c 文件。

我有一个名为 fairwell.c 的简单程序,通过命令行键入将其编译为 fairwell.exe

gcc fairwell.c -o fairwell.exe

显示以下文本:

Goodbye cruel world

然后我删除了这些 fairwell.c.exe 文件。现在,每次我尝试在命令行编译一个新的 .c 文件时,它都会显示此文本 Goodbye残酷的世界 并且不编译该文件。不过,我仍然可以直接通过 CodeBlocks 编译文件。

问题出在哪里?

最佳答案

Now everytime I try to compile a new .c file at the command line it keeps displaying this text Goodbye cruel world and does not compile the file.

嗯,这意味着当您运行gcc时,您实际上运行的是旧的farewell程序。因此,您必须以某种方式将其重命名为 gcc,并且它位于真正的 gcc 之前的 PATH 中,或者很可能位于当前目录中。如果它在您的 IDE 下工作,则意味着您应该仍然拥有原始的 gcc,因此至少不需要重新安装。

假设您按照标记所示在cmd.exe下运行,则在构建失败的提示符下,给出以下命令:

where gcc

它应该打印该命令运行的任何内容的完整路径。因此,请检查该文件(例如,使用完整路径运行它)以验证它确实是您的farewell程序,然后(以防万一)重命名它。现在应该可以从命令提示符以及 IDE 进行构建,并且您可以删除重命名的文件。

PS。如果您实际上使用的是 bash 而不是 cmd.exe,请尝试使用 which gcc 来查找错误的 gcc .

关于无法从命令行编译c文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25535223/

相关文章:

c - malloc不同方式的区别

c - 无法知道段错误的原因

c - 使用指针在单链表中反向打印

C - MADV_HUGEPAGE 编译错误

c++ - 如何在 Powershell 中运行 C++ 程序,就像 CMD 一样?

c - GCC 为数组元素的重复 XOR 生成冗余代码

r - 由于包依赖性,R CMD 检查出错

C - 在函数中返回 2 个值并尝试使用它们

opencv - 如何编译我的使用opencv的c程序

c++ - 编译器是否优化了净零位移位?