【问题标题】:How to compile multiple files in sublime text 3如何在 sublime text 3 中编译多个文件
【发布时间】:2019-03-19 17:58:32
【问题描述】:

我正在使用 Sublime Text 3 编写一些学校项目,我必须编写一个带有一些自定义标题的程序,这些标题具有 1 个功能。问题是构建系统(sublime text在cmd中写入什么来构建)只将main.cpp文件而不是header的headers和.cpp放在cmd中,因此无法正确编译。

我正在寻找一种通过在 cmd 中编写 main.cpp 文件(“g++ main.cpp -o main.exe”)或修改构建系统以添加所有头文件来编译头文件的方法在cmd行(“g++ headersourcefile.cpp header.h main.cpp -o main.exe”)(这个编译ok)

构建系统是用 JSON 编写的(我不知道 :))

---编辑---

我的问题是 Sublime Text 只编译我正在编写的文件,而不是我制作的#includes,f.e. #include “组织者.h”。我正在使用的构建系统是我根据在 Internet 上找到的一些系统编写的自定义系统(这就是我认为我做错了什么的原因)。现在我正在尝试“make”构建系统,但我不知道它是如何工作的(它说:“没有指定目标,也没有找到 makefile。停止。)。

感谢您的关注:)

【问题讨论】:

  • JSON 只是一种格式化数据的方式,您可以将这部分从您的问题中完全删除。另外,修正错字“heathers”,你的意思是“headers”。
  • 如何使用专门设计的工具,例如make
  • 我对“make”一无所知,请您说的更具体些吗?
  • Sublime 附带的用于编译 C/C++ 的构建系统仅编译(或编译然后执行)当前文件。根据您的提问方式,您的问题有点不清楚,但您不需要在命令行中包含头文件,您可以在代码中 #include 它们。也就是说,如果您需要编译多个源文件,您确实需要调整构建或使用另一个构建系统,如 make。如果这是你想做的,你能在你的问题中澄清一点吗?
  • 我看到有人说需要在构建系统的cmd部分写-I [dir] source.cpp。还没想好怎么做。

标签: c++ sublimetext3 build-system


【解决方案1】:

按照建议,我让自己进入 makefile 并让其中一个工作,它正在构建项目并做我想做的事。需要重新安装mingw tho,才能获得带有msys2 的设备,这样make 才能正常工作。

感谢您的帮助

【讨论】:

    【解决方案2】:

    这里有答案:https://stackoverflow.com/a/21956602/1599699

    {
      "cmd" : ["g++ *.cpp -o executablename"],
      "shell":true
    }
    

    或者,正如我在 cmets 中提到的:

    “使用"cmd": ["g++ *.cpp -o test && gnome-terminal -- './test'"](或等效的终端程序,如 konsole 或 xterm 而不是 gnome-terminal)然后运行它。我使用的是 gnome-terminal -x sh -c './test',但后来它说只需使用 -- 来终止选项并在之后输入命令。”

    【讨论】:

      【解决方案3】:

      感谢安德鲁!您可以使用代码使他的构建运行:

      {
          "cmd" : ["g++ *.cpp  -o $file_base_name &./$file_base_name"],
          "working_dir": "$file_path",
          "shell":true
      }
      

      【讨论】:

        猜你喜欢
        • 2014-08-05
        • 2012-09-27
        • 1970-01-01
        • 1970-01-01
        • 2017-06-23
        • 1970-01-01
        • 1970-01-01
        • 2014-03-06
        • 2016-07-22
        相关资源
        最近更新 更多