【问题标题】:sublime text 2 build system for C programming language [closed]用于 C 编程语言的 sublime text 2 构建系统 [关闭]
【发布时间】:2012-11-20 03:22:14
【问题描述】:

我正在学习 C 语言。我指的是 Dennis Ritchie & Kernighan 的书。因此,只有 ANSI 投诉程序。我已经安装了 ANSI 编译器。我刚刚安装了 Sublime text 2 编辑器。谁能给我一个可以执行以下操作的构建系统。

1) 编译我的源文件

2) 在编译不成功时在 sublime 中显示错误(格式正确)。

3) 编译成功后,在我的工作目录中生成与源文件名相同的二进制文件。

4) 接受 sublime 中的任何用户输入来计算输出。 (由于我是初学者,我主要编写要求用户输入的程序。例如:计算用户输入名称中字符数的程序。)

5) 单独选择编译和运行。

提前致谢。

【问题讨论】:

  • ST2 不允许用户输入,即您的第四个请求。
  • 感谢您的回复。问题解决了。 :)

标签: c build system sublimetext2


【解决方案1】:

在 sublime text 2 中查看状态栏,其中显示语言或“纯文本”, 单击它并搜索“c”语言。要构建你只需要保存 Ctrl-s 和 Build Ctrl-B ,就像蛋糕一样简单!您也可以尝试使用 C 友好的 IDE,例如 Eclipse。 http://www.eclipse.org/

【讨论】:

  • 博士。 Astragalo:我需要满足上述要求的构建系统。现有的构建系统不提供上述所有功能。默认的构建系统也不起作用。 C 被选中,当我构建时我得到“系统找不到指定的文件”错误。编译器安装位置:C:\MingGW\bin 环境变量中正确指定了PATH。
【解决方案2】:

从菜单中选择 Build -> New build system ... 并复制粘贴:

Windows

仅编译:

{
"cmd" : ["gcc", "$file_name", "-o", "${file_base_name}.exe", "-lm", "-Wall"],
"selector" : "source.c",
"shell":true,
"working_dir" : "$file_path"
}

编译并运行:

{
    "windows":
    {
        "cmd": ["cc","-std=c99" ,"$file_name","-o", "${file_base_name}.exe", "-lm", "-Wall", "&","start", "${file_base_name}.exe"]
    },
    "selector" : "source.c",
    "shell": true,
    "working_dir" : "$file_path",
}

Linux

仅编译:

{
"cmd" : ["gcc", "$file_name", "-o", "${file_base_name}", "-lm", "-Wall"],
"selector" : "source.c",
"shell":false,
"working_dir" : "$file_path"
}

编译并运行:

{
    "linux":
    {
        "cmd": ["cc","-std=c99" ,"$file_name","-o", "${file_base_name}", "-lm", "-Wall", ";", "./${file_base_name}"]
    },
    "selector" : "source.c",
    "shell": true,
    "working_dir" : "$file_path",
}

并使用扩展名 *.sublime-build 保存它

ST 只是一个编辑器,所以你不能将它用作输入流,你必须使用 bash、zsh 等 shell 来做到这一点。

【讨论】:

  • c633:我非常感谢你。有用。非常感谢您的回复。 :)
  • 如果不指示 GCC 与数学库 -lm 链接还不够吗?
  • 是否有任何 sublime 方法可以在执行后保持外壳打开。在窗户上?我的意思是,它只是避免在 C 中多写一行,但它可能对像我这样的懒人有帮助......或者是否可以使用 buildlog 作为输出?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-10-07
  • 1970-01-01
  • 2013-10-14
  • 2013-07-12
  • 2013-01-03
  • 1970-01-01
  • 2013-08-28
相关资源
最近更新 更多