如何以崇高的文字3编译多个文件

时间:2018-10-15 10:20:00

标签: c++ sublimetext3 build-system

我正在使用Sublime Text 3编写一些学校项目,并且我必须编写带有一些具有1个功能的自定义标头的程序。问题在于构建系统(在cmd中写入要生成的高级文本)仅将main.cpp文件而不是cmd中的标头和.cpp放置在cmd中,因此无法正确编译。

我正在寻找一种仅通过在cmd中写入main.cpp文件(“ g ++ main.cpp -o main.exe”)或修改构建系统以使其添加所有标头的方式来编译标头的方法在cmd行中(“ g ++ headersourcefile.cpp header.h main.cpp -o main.exe”)(此命令可以编译)

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

---编辑---

我的问题是Sublime Text仅编译我正在写的文件,而不编译我创建的#include,例如#include“ organiser.h”。我使用的构建系统是我根据互联网上发现的一些构建的定制系统(这就是为什么我认为做错了什么)。现在,我正在尝试“ make”构建系统,但我不知道它是如何工作的(它说:“未指定目标,未找到任何makefile。停止。)。

感谢您的关注:)

3 个答案:

答案 0 :(得分:0)

突然,我进入了makefile,并使其中一个工作,这正在构建项目并执行我想要的事情。需要重新安装mingw,以便与msys2一起使用,这样make才能正常工作。

感谢您的帮助

答案 1 :(得分:0)

在这里回答:https://stackoverflow.com/a/21956602/1599699

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

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

“使用"cmd": ["g++ *.cpp -o test && gnome-terminal -- './test'"](或类似的终端程序,例如konsole或xterm而不是gnome-terminal)来运行它。我使用的是gnome-terminal -x sh -c'./test',但是随后说只是使用-终止选项,然后再放置命令。”

答案 2 :(得分:0)

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

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