运行代码时终端出错

运行代码时终端出错

我昨天安装了 Ubuntu,所以我不知道很多命令是什么意思。我只是边学边学。我安装了 Sublime Text 3 编辑器,并尝试使用基于 Ubuntu 16.04 的教程编译和运行程序。编译成功,但它显示了类似这样的错误,并且打开的运行终端没有任何反应。

图片 1

所以我所做的是改变构建系统:在第 12 行我删除了“-e”并添加了“--”:

图片 2

图片 3

现在,编译状态中没有显示错误,但终端显示另一个错误。

图片 4

我想我需要对构建系统做一些额外的更改。

这是我用于构建系统的代码:

{
 "cmd": ["g++", "$file", "-o", "${file_path}/${file_base_name}"],
 "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
 "working_dir": "${file_path}",
 "selector": "source.c, source.c++, source.cxx, source.cpp",
 "variants":
 [
    {
        "name": "Run",
        "shell": true,
        "cmd": ["gnome-terminal -e 'bash -c 
        \"${file_path}/${file_base_name};echo;echo;  echo Press ENTER 
        to continue; read line;exit; exec bash\"'"]
   }
 ]
}

答案1

在 Sublime Text 3 中,构建系统cmd具有不同的语法:您应该将命令的每个参数写在不同的引号中,如下所示:

"cmd": ["gnome-terminal", "-e", "'bash -e ...'"]

它更易于使用shell_cmd

"shell_cmd": "gnome-terminal -- bash -c 'Your command here'"

例如,这将执行您编译的程序并等待按下任意键:

"shell_cmd": "gnome-terminal -- bash -c '${file_path}/${file_base_name}; read -sn 1'"

相关内容