要在Sublime Text 2中编译并运行.cpp文件,我按下命令+ shift + B.但我不知道如何告诉Sublime Text链接外部.h文件。当我把#include“genlib.h”并编译时,我收到此错误。
/Users/ckaj/Desktop/main.cpp:1:10: fatal error: 'genlib.h' file not found
#include "genlib.h"
^
1 error generated.
[Finished in 0.2s with exit code 1]
[shell_cmd: g++ "/Users/ckaj/Desktop/main.cpp" -o "/Users/ckaj/Desktop/main"]
[dir: /Users/ckaj/Desktop/]
[path: /usr/bin:/bin:/usr/sbin:/sbin]
所以,我尝试将'genlib.h'文件放在同一目录中以查看它是如何工作的。我得到一个不同的错误如下。
In file included from /Users/ckaj/Desktop/main.cpp:1:
/Users/ckaj/Desktop/genlib.h:225:1: error: expected unqualified-id
<U+001A>
^
1 error generated.
[Finished in 0.2s with exit code 1]
[shell_cmd: g++ "/Users/ckaj/Desktop/main.cpp" -o "/Users/ckaj/Desktop/main"]
[dir: /Users/ckaj/Desktop/]
[path: /usr/bin:/bin:/usr/sbin:/sbin]
我一直在寻找几个小时的答案,但无济于事。我要感谢任何试图帮助我修复Sublime Text 2的人。
答案 0 :(得分:1)
感谢大家的帮助。我终于阅读了构建文档。如果您了解如何在命令行上使用g ++进行编译,这似乎很简单。这是答案。
{
"cmd": ["g++ -Wall ${file} -o ./bin/${file_base_name} -I${file_path}/lib && ./bin/${file_base_name}"],
"selector": "source.c++",
"working_dir": "${file_path}",
"shell": true,
"variants": [
{
"name": "Run",
"cmd": ["g++ -Wall ${file} -o ./bin/${file_base_name} -I${file_path}/lib && open ./bin/${file_base_name}"],
"working_dir": "${file_path}",
"shell": true
}
]
}
答案 1 :(得分:0)
按照@ Mick的想法,这对我有用(崇高的文字3,ubuntu 15.10):
{
"cmd": ["g++ -std=c++0x ${file_path}/*.cpp -o tmp && ./tmp"],
"working_dir": "${file_path}",
"selector": "source.c, source.c++",
"shell": true
}