如何在项目外部的CodeBlocks中编译和运行C文件?

时间:2017-09-24 05:42:50

标签: c codeblocks projects

我在CodeBlocks中打开了一个项目,该项目可以成功构建和运行。现在,如果我在IDE中打开另一个C文件,则构建和运行命令将作用于现有的打开项目,而不是新的C文件。如果有多个项目,我们可以使用“激活项目”在它们之间切换。但是,如果项目外有一个活动项目和另一个C文件,该怎么办?那么如何编译和运行C文件呢?

4 个答案:

答案 0 :(得分:4)

  1. 在左侧的Projects标签下,右键点击您的项目,然后点击Close project。对所有打开的项目执行此操作。

  2. 现在,如果您的C文件已打开,只需按F9即可编译并运行您的程序。

  3. 在Code :: Blocks中编译和运行单个C文件很容易:

    1. 要创建文件,请点击File - > New - > Empty file
    2. 输入代码后,请使用.c扩展名保存。
    3. F9编译并运行程序。

答案 1 :(得分:1)

Code::Blocks 不是编译器,而是IDE。

  

如何在项目外的CodeBlocks中编译和运行C文件?

它运行编译命令,可能使用GCC(但也考虑Clang)。编译器编译代码(而不是CodeBlock)。

所以你不用CodeBlocks编译。

(BTW,删除系统上的signal(SIGPIPE, SIG_IGN),CodeBlocks无法在项目或单个文件中构建任何程序 - 来自C代码)

要将gcc编译到某个程序foo.c中,您希望运行类似

的程序
fooprog

并且您可能需要gcc -Wall -Wextra -g foo.c -o fooprog 的其他参数(例如,一些gcc-I用于预处理,一些-D-L用于链接库。他们的命令很重要。阅读关于invoking GCC的章节。 -l要求提供所有警告以及更多警告。 -Wall -Wextra要求调试信息。 -g需要输出可执行文件-o fooprog ...详细信息可能是特定于操作系统的。

您可以在终端中运行该fooprog命令。也许CodeBlock可以配置为以某种方式运行它(这是一个非常不同的问题)。

您还可以了解有关build automation的更多信息。考虑GNU makeninja等等......您的Makefile可能会构建几个可执行文件(使用普通gcc命令,您可以配置IDE或编辑器来运行它。)

请注意,许多free software个项目(githubsourceforge等等)不需要任何特定的IDE(但使用某些构建自动化软件构建)。这可能会敲响你的脑袋。好source code editors(例如makeemacs)能够运行构建命令(与IDE一样好,一般而言)。也许你应该考虑使用它们。

答案 2 :(得分:0)

如果文件不是项目的一部分,我怀疑你可以用任何IDE编译它。您可能需要手动编译它或为它创建一个项目。

创建IDE来管理整个项目,而不是单个文件。

答案 3 :(得分:0)

你可以用一点技巧。

跟我来测试版本:

  1. 创建新项目
  2. 打开该项目然后运行它。它当然有用
  3. 打开您的单个文件,此时, codeblock 涉及活动项目,如果您切换到单个文件并按:Ctrl + F9它仍会构建您的项目并且不是您的单个文件
  4. 菜单中的
  5. 关闭所有项目file
  6. 菜单file 中的
  7. 关闭所有文件
  8. 重新打开您的项目和单个文件
  9. 现在你的项目点击:

    • Ctrl + F9代表构建
    • 然后Ctrl + F10 运行它将运行(=或F9两者)

    也可以在单个文件上尝试此操作,然后您的单个文件也会运行。

    已在 Code :: Blocks 16.04上测试过; 32位; Ubuntu