sublime text 3 编译怎么编译

& sublime text 3配置c/c++编译环境
支付宝打赏
如果文章对你有帮助,欢迎点赞或打赏(金额不限)。你的打赏将全部用于支付网站服务器费用和提高网站文章质量,谢谢支持。
, , , , , ,
相关的文章
可以问下为什么语法有错误的时候sublime不提示呢?
没有问题的时候是能正常编译运行的。。为常用的工具和语言自定义Sublime Text的编译系统 - CSDN博客
为常用的工具和语言自定义Sublime Text的编译系统
Custom Sublime Text Build Systems For Popular Tools And Languages【为常用的工具和语言自定义Sublime Text的编译系统】
惯例上链接:
这个是想看看算法又不想装IDE的时候准备配置一下Sublime。关键是看了一下前面的解说部分,后面具体的配置没有用这个文章中的,但是既然已经顺便翻译完了就放上来。。。。。
为了比之前的文章看着舒服开始换markdown编辑器了。
Sublime Text是目前开源社区的很多开发人员所选择。它很复杂,并且具有强大的文本选择和自定义支持,同时它还有很多其它文本编辑器所不具备的一项功能——它的编译系统。在这篇文章中,我将向你们介绍Sublime的编译系统,同时分享几个我们现在经常用的语言和工具的编译脚本。
它们包括用于Grunt,CoffeeScript,SASS等的脚本。
Sublime Text编译系统可以说很简单,但却是可高度自定义的,其基本思想就是每个类型的编译配置文件都是由一个“.sublime-buile” file -a JSON 的声明来使其生效,这个声明包括使用一个特定工具(或一系列工具)来编译一个工程需要的命令、路径以及配置项。
编译操作可以用键盘快捷键(Mac上默认是Command+B,Windows上是F7)来实现,或者在文件保存之后用工具菜单中的build实现。对于当前打开的工程,它会自动记得上次选择的(例如grunt)编译系统。
当通过一个“.sublime-build”文件向Sublime传递外部工具/二进制文件参数时,它可以使用任何需要的参数或标志。它还能用Sublime中内置的控制台将调用的这些应用的输出重新导回。这种能够不用离开编辑器而轻松编译工程的工作模式很有效率。
增加一个自定义编译系统[Adding a custom Build System]
Sublime通过存放在Sublime“Packages”目录下的“.sublime-build”文件构成其工具/编译系统目录。如果有人需要定位到这个文件夹的话,可以在”~/Library/Application Support/Sublime Text2/Packeges/User”(如果是用OS X)目录下找到,如果是其它平台也可以在相应的Packages/User目录下找到。
一个基本的“.sublime-build”文件可以是如下的关键字/值形式:
"cmd": ["command", "argument", "--flag"],
"selector": ["source.js"],
"path": "/usr/local/bin",
"working_dir": "/projects/"
支持的关键字包括:
- cmd——一个数组,包括要执行的命令,以及该命令要求提供的参数(argument)和标识(flags)。注意,Sublime会检查你列出的所有工具的路径,除非已经有一个绝对路径指向它们。
- selector——一个可选字符串,用来指定对于当前文件范围来说最优的编译器。这一项仅仅在工具/编译系统/自动(Tools/Build System/Automatic)为真时有用。
- path——一个可选字符串,用于在列出的命令被调用之前替换你的当前进程路径。
- working_dir——一个可选字符串,定义一个目录来将当前目录切换为调用任意命令时的优先目录。
- shell——一个可选布尔值,用于定义命令是否用shell(例如 bash)执行。
- file_regex——一个可选正则表达式,用于获取指令的错误输出。
如果需要Sublime编译脚本中支持的关键字完整列表,可以查看。
编译变量:
除此之外,Sublime支持在编译文件中使用变量替换,例如$file_path(当前文件的路径)等。它们包括:
- $file_path——当前查看的文件目录
- $file_name——仅指当前文件(包括扩展名)的名字部分
- $file_base_name——当前文件(不包括扩展名)的名字部分
- $project_path——当前工程路径
- $project_name——当前工程的名字
所有支持的替换()列表。
编译任务归类[Grouping build tasks]
一些开发人员还喜欢用一个外部bash脚本(或类似的)将任务归类。举例来说,这里有一个简单的配置脚本(deploy script),你可以通过它在Sublime中用git来commit和push你的最新修改,然后将最新的文件上传到FTP。
例子:Commit, Push And Upload To FTP
deployment.sh:
#!/bin/bash
git add . && git commit -m 'deployment' && git push && git ftp init -u username
-p password - /public_html
deployment.sublime-build:
"cmd": ["deployment"],
"working_dir": "${project_path:${folder}}"
如果你以前没有用过git-ftp,Alex Fluger有篇关于如何使用它的比较全面的你可能会感兴趣。
确定目标平台[Targeting Platforms]
Sublime编译文件还支持针对特定平台(即:OS X,Windows,Linux)指明配置数据。通过用平台的名字确定配置文件(config)中的其它元素,可以很轻松地确定目标平台,例如:
"cmd": ...
"windows":
"cmd": ...
"cmd": ...
针对流行的前端(front-end)工具编译文件[Build files for popular front-end tools]
为了帮助你开始,针对我所注意到的当下web开发人员使用的一些前端工具,已经在下面列出了一系列“.sublime-build”文件。
以上大部分都可以在没有指定path的时候正常工作,但是如果你遇到了和path相关的问题,可以尝试将它include进你的config文件中(例如:”path”: “usr/local/bin”)
"cmd": ["grunt", "--no-color"],
"selector": ["source.js", "source.less", "source.json"]
Node Build Script:
"cmd": ["h5bp", "--no-color"],
"selector": ["source.js", "source.less", "source.json"]
CoffeeScript:
"cmd": ["coffee","-c", "$file"],
"selector" : "source.coffee"
"cmd": ["sass", "--watch", ".:."],
"working_dir": "$file_path",
"selector": ["source.scss", "source.sass"]
与此同时有一个更加详细版本的config,包括自动缩小和查看,如下:
"cmd": ["sass", "--watch", "sass:stylesheets", "--style", "compressed"],
"working_dir": "$project_path",
"selector": ["source.scss", "source.sass"]
"cmd": ["lessc", "-x", "$file", "$file_path/$file_base_name.css", "--verbose"],
"shell" : true,
"selector": "source.css.less"
"cmd": ["stylus", "$file"],
"file_regex": ".",
"selector": "source.stylus"
(一个更加复杂的版本可以在工程中找到)
"cmd": ["cmd", "/c", "jade", "$file"],
"selector": "source.jade"
r.js (RequireJS Optimizer):
"cmd": ["node", "r.js", "-o", "app.build.js"],
"working_dir": "$project_path",
"selector": "source.js"
"cmd": [ "node", "uglifyjs", "-o", "${file_path}/${file_base_name}.min.js", "$file"],
"selector": "source.js"
Node (just passing in directly):
"cmd": ["node", "$file"],
"file_regex": "^[ ]*File
, line ([0-9]*)",
"selector": "source.js"
Pandoc (Markdown to HTML):
"cmd": ["pandoc", "-S", "-s", "-f", "markdown", "-t", "html", "-o", "$file_base_name.html", "$file"],
"selector": "text.html.markdown"
(还有当它发布之后:)
"cmd": ["yeoman", "build", "--no-color"],
"selector": ["source.js", "source.scss", "source.sass", "source.html"]
我猜大多数web开发人员都会想在一个更宽泛的编译流程中使用JSHint,但是如果你喜欢通过一个Sublime编译文件单独运行它的话,包中有一个可以同时在OS X和Windows上良好工作。
针对特定编程语言编译文件[Build files for specific programming languages]
Ruby (using RVM):
"cmd": ["~/.rvm/bin/rvm-auto-ruby", "$file"],
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"selector": "source.ruby"
"cmd": ["python", "-u", "$file"],
"file_regex": "^[ ]*File
, line ([0-9]*)",
"selector": "source.python"
"cmd": ["/usr/bin/php", "-l", "$file"], &- Couldn't just use "php" ?
"file_regex": "^Parse error: .* in (.*?) on line ([0-9]*)",
"selector": "source.php"
"cmd": ["javac", "$file_name", "&&", "java", "$file_base_name"],
"working_dir": "${project_path:${folder}}",
"selector": "source.java",
"shell": true
.Net (Windows):
"cmd": ["%WINDIR%\Microsoft.NET\Framework\v4.0.30319\msbuild", "${project_base_name}.sln"],
"shell": true,
"working_dir": "${project_path:${folder}}"
"cmd": ["make && ./a.out"],
"path": "/usr/bin:/usr/local/bin:...",
"shell": true
C++ (via g++):
(注意我们还可以指定OS-specific[特定操作系统]配置项,如下:)
"cmd": ["g++", "$file", "-o", "$file_base_name", "-I/usr/local/include"],
"selector": "source.c++",
"windows": {
"cmd": ["cl", "/Fo${file_path}", "/O2", "$file"]
"cmd": ["runhaskell", "$file"],
"file_regex": "^(...*?):([0-9]*):?([0-9]*)",
"selector": "source.haskell"
Sublime的编译系统很赞,可以帮你避免在编辑器和外部编译工具之间频繁的手动切换。鉴于你现在很可能已经了解到,将你自己自定义的编译系统放到一起是一个很简单的过程,我建议如果Sublime在机缘巧合下成为了你的编辑器的话,你可以将这个过程实践一下。
本文已收录于以下专栏:
相关文章推荐
在同时安装了python2和python3后
编译系统里选择python3可以正常调试
但是python就会报找不到python27
安装PackageResourceViewer后,修改pyt...
最近想用Python软件编写关于及其学习的、处理一个图形图像的软件,每次都是命令行的方式有些繁琐,所以想用个IDE,正好电脑上装了Sublime,不用再下载第三方的东西了。具体步骤包括:
  
  1...
本文介绍sublime text 3的c/c++开发环境搭建,包括MinGW的安装,gcc运行c语言,g++运行c++语言,在sublime中运行以及在cmd中运行的方法。另外对于MinGW和gcc,...
sublime text 3默认可以添加新的build system,选择了自己添加的build system后,就可以Ctrl+B实现编译和建立,然后运行。如何建立自己的build system,以...
本文介绍Sublime Text 3的C/C++开发环境搭建,包括MinGW的安装,gcc运行c语言,g++运行c++语言,在sublime中运行以及在cmd中运行的方法。
笔者之前在学习TensorFlow,也在自己的笔记本上完成了安装,在PyCharm中进行学习。但是最近为了使用python的科学计算环境,我把之前的环境卸载了,并用Anaconda重新安装了Tenso...
之前 写过一篇在 ubuntu 下安装 TensorFlow 的教程,那个时候 TensorFlow 官方还不支持 Windows 系统,虽然可以通过其他方法安装,但是终究不是原生的,而且安装过程繁琐...
转载地址:/html/33948_1.html
Go语言是谷歌自家的编译型语言,旨在不损失性能的前提下降低代码复杂率。其优势是让软件充分发挥多核心处理器同...
Go语言是谷歌自家的编译型语言,旨在不损失性能的前提下降低代码复杂率。其优势是让软件充分发挥多核心处理器同步多工的优点,并可解决面向对象程序设计的麻烦。
一、安装Golang的SDK
在官网htt...
他的最新文章
讲师:吴岸城
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)博客访问: 965591
博文数量: 95
博客积分: 206
博客等级: 入伍新兵
技术积分: 1675
注册时间:
认证徽章:
除了努力还要有机遇,有情商
IT168企业级官微
微信号:IT168qiye
系统架构师大会
微信号:SACC2013
分类: Python/Ruby
一、安装包管理器(如果已经安装可以忽略)
1、简单的安装方法:
使用Ctrl+`快捷键或者通过View-&Show Console菜单打开命令行,粘贴如下代码:
import urllib.request, pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); open(os.path.join(ipp, pf), 'wb').write(urllib.request.urlopen( 'http://sublime.wbond.net/' + pf.replace(' ','%20')).read())
顺利的话,此时就可以在Preferences菜单下看到Package Settings和Package Control两个菜单了
如果是Sublime Text2,代码如下:
import urllib2, pf='Package Control.sublime-package'; ipp = sublime.installed_packages_path(); os.makedirs( ipp ) if not os.path.exists(ipp) else N urllib2.install_opener( urllib2.build_opener( urllib2.ProxyHandler( ))); open( os.path.join( ipp, pf), 'wb').write( urllib2.urlopen( 'http://sublime.wbond.net/' +pf.replace( ' ','%20' )).read()); print( 'Please restart Sublime Text to finish installation')
2、 如果简单安装提示有错误可以尝试手动安装:
1、点击Preferences & Browse Packages菜单
2.进入打开的目录的上层目录,然后再进入Installed Packages/目录
3.下载Package Control.sublime-package并复制到Installed Packages/目录(可以去百度搜下官方下载地址,很简单)
4.重启Sublime Text&
提示:如果还是没安装成功,请百度sublime包管理安装方法;
二、安装SublimeREPL
1、调用ctrl+shift+p,输入:sublimerepl选择并安装;(本机安装时候居然找不到这个sublimerepl,后来输入install package才调出来)
2、然后tools --sublimeREPL--Python你会发现打开了一个python的shell窗口,显然这个并不是我们想要的;
3、继续往下走,选择好我们要执行的py文件,选择Tools -& SublimeREPL -& Python -& RUN current
file,这时候已经支持输入了数据了;
如下图所示:
4、为了调试方便,我们可以把这个窗口放到右边,先设置sublime的窗口显示为多层:
然后再调用发现:
这样更方便调试用;
5、最后,由于每次运行程序都要执行:Tools -& SublimeREPL -& Python -& RUN current
file 菜单有点麻烦,所以现在可以考虑给他创建个快捷键;
方法:perferences -- key bindings user 中粘贴如下代码(快捷键红色标示的自定义就可以,个人喜欢F5):
[ {"keys":["f5"],
"caption": "SublimeREPL: Python - RUN current file",
"command": "run_existing_window_command", "args":
"id": "repl_python_run",
"file": "config/Python/Main.sublime-menu"
这样以后你打开你要运行的Py程序,就可以直接按照你设置的快捷键运行了;
此插件不知道为什么,有时候运行会报错,但有时候是好的,错误如下:
个人的解决办法是,按几下ctrl+b编译下有时候会好。。。。不知道还有没有根本的解决办法;总体来说这个插件不是太好用。。。
阅读(35393) | 评论(3) | 转发(1) |
相关热门文章
给主人留下些什么吧!~~
:ctrl+s后再按f5&会不会好点?
ctrl+s是个好习惯,赞! |
:后来一直用单层窗口,在需要界面输入时候,按f5调出来,此插件不会报错,用着挺好的!
ctrl+s后再按f5&会不会好点? |
后来一直用单层窗口,在需要界面输入时候,按f5调出来,此插件不会报错,用着挺好的!
请登录后评论。sublime text 3 配置c++编译与运行环境
之前安装了sublime来写python,最近发现用它写c++也是不错的选择.
但有个问题就是,未经配置的话,它只能编辑,不能编译和运行.
于是花了一天,各种折腾,终于配置到自己满意了.
1.尝试编译
首先,sublime的编译快捷键是ctrl+B和ctrl+shift+B.对应下图的这两个选项,至于这两个选项有什么不同,我们先不说.
第一次按ctrl+B的话,它会弹出这个窗口,我们先选择第一个.
选择了之后,你会发现编译失败,失败的标志就是那个&exit code 1&.
细看第二行字,你会发现其实sublime就是执行一个cmd命令来编译的,并且编译器默认是g++.
因此我们需要一个g++,并且要把它添加到环境变量的路径里.
2.配置编译环境
g++需要安装MinGW,当然你也可以安装de++或者codeblock这样的IDE,它们会附带一个MinGW.
有MinGW后,你需要找到g++在MinGW中的位置.我用的是devc++附带的MinGW,路径如上图.
g++在不同的MinGW的位置可能有一点点出入,但大概都会在一个bin文件夹里,真找不到就直接文件搜索吧.
找到这个路径之后要把它添加到环境变量的路径里,为什么要这样做?
添加路径前:
添加路径后:
在添加路径前,你直接打开cmd运行g++会提示不是命令也不是程序,这是因为windows在环境变量提供的路径里找不到g++这个程序.
在添加路径后,输出不同了,虽然好像也是个错误,但这是因为未提供参数而已.也就是说,windows找到了g++并且运行了它.
添加路径到环境变量,其实就是让cmd无论在哪里都能运行这个路径里的程序.这样做有利也有弊,它可能会带来名字空间的污染.
添加环境变量的方法是:我的电脑右键-&属性-&高级设置-&高级-&环境变量-&系统变量里的Path.
(PS:下图是win10版本的窗口,其他windows版本有较大不同)
3.使用方法
添加完环境变量后,重启sublime,按下ctrl+B,发现下面只有一行字.
再看看放代码的文件夹,居然多了一个exe.这说明编译成功!
嗯,是能编译了,但怎么运行呢?按ctrl+shift+B,你会发现那个菜单又弹出来了.
我们选择下面的选项,看看下面的文本框,是不是有&Hello,world!&了?!
这时候你再按ctrl+B,你发现&Hello,world!&还在.
事实上,ctrl+B并不是编译的快捷键,它是编译或者编译运行的快捷键.
当你按ctrl+shift+B的时候,那两个选项就是让你选择是编译还是编译运行的,选择哪个ctrl+B执行的操作就是那个命令,说白了ctrl+B就是执行你最近一次选择的相关操作.
4.编译+运行+编译运行+黑框
如果是一般人,可能做到这里就完了,但笔者总是有很多奇怪的需求.
比如说,运行的话,每次都要重新编译,是会浪费时间的.
还有,sublime的文本框太小了,并且在这个框没法正常输入,因此我希望它能弹出一个黑框.
怎么做,我们需要自己建一个编译系统.
点击它后,你发现它会帮你新建一个文件,而不是弄一个窗口出来让你选择参数之类的.
嗯,这就是sublime的特点,它把所有的选项都放在了文件里.对某些人来说,这样设置起来会很自由,但对新手可能不太友好.
百度找了一段json,直接拷贝上去.
&cmd&: [&g++&, &${file}&, &-o&,&${file_path}/${file_base_name}&],
&file_regex&: &^(..[^:]*):([0-9]+):?([0-9]+)?:?(.*)$&,
&working_dir&: &${file_path}&,
&encoding&:&cp936&,
&selector&: &source.c++&,
&variants&:
&name&: &Run&,
&cmd&: [&cmd&,&/C&,&start&,&cmd&,&/c&, &${file_path}/${file_base_name}.exe &pause&]
这里有一个注意点,selector那一项要填&source.c++&而不是&source.cpp&,否则sublime不会将这个编译系统识别成c++编译器.
然后ctrl+s保存,默认的路径应该就是这里,然后名字改成&CPP.sublime-build&,据说好像CPP一定要大写.
(PS:这个路径是C:\Users\xxx\AppData\Roaming\Sublime Text 3\Packages\User,其中xxx是你的windows用户名字)
保存了之后,先重启一下.然后在cpp文件那里键入ctrl+shift+B,惊喜地发现了我们新建的编译系统.
结合前面的代码我们可以知道,第三个选项是编译,而第四个选项是运行.
点击第三个,出现了和第一个一样的一行Finished,而点击第四个,则出现了黑框!
好,差一个编译运行就大功告成了.虽然上面第二个选项是编译运行,但它不是在黑框里输入输出.
这个过程我弄了非常久,由于对sublime的配置和cmd命令不是很熟,最后弄了两个文件去实现.
修改CPP.sublime_build
&cmd&: [&g++&, &${file}&, &-o&,&${file_path}/${file_base_name}&],
&file_regex&: &^(..[^:]*):([0-9]+):?([0-9]+)?:?(.*)$&,
&working_dir&: &${file_path}&,
&encoding&:&cp936&,
&selector&: &source.c++&,
&variants&:
&name&: &Run&,
&cmd&: [&cmd&,&/C&,&start&,&cmd&,&/c&, &${file_path}/${file_base_name}.exe &pause&]
&name&: &Compile and Run&,
&cmd&: [&sublime_cpp_cr.bat&,&${file}&,&${file_path}/${file_base_name}&]
新建sublime_cpp_cr.bat
g++ %1 -o %2 && cmd /C start cmd /c sublime_cpp_cr2 %2.exe
新建sublime_cpp_cr2.bat
上面两个bat文件放在g++的同一目录,或者任意的环境变量路径里.
然后重启,一切都美好了起来!
由于我怎么在CPPsublime_build里弄编译运行的命令都会出错,于是我直接让它运行一个bat.
写好bat后,发现黑框要么闪退,要么不会消失.我想要的效果是,最后弹出一个&请按任意键结束&,当我按一个键后,黑框会自动消失.
折腾了很久后,发现再加一个bat就行了~!Ubuntu 用户如何安装 Sublime Text 3 (Build 3065) 文本编辑器
阅读 8,848 次
Sublime Text 3 是一款轻量级、跨平台的文本编辑器。可安装在Ubuntu,Windows和MAC OS X上高级文本编辑软件,有一个专有的许可证,但该程序也可以免费使用,无需做逆向工程。如果你想有更高级的版本可付费获取。
Sublime Text 3 仍然是测试版,最新版本是Sublime Text 3 (Build 3065) 。
安装,因为有 PPA 可用,安装非常方便,支持 Ubuntu 15.04、14.10、14.04、12.04 系统及衍生版本系统,打开终端,输入以下命令:
sudo add-apt-repository ppa:webupd8team/sublime-text-3
sudo apt-get update
sudo apt-get install sublime-text-installer
卸载 sublime text 命令:
sudo apt-get remove sublime-text-installer
新跟进评论
我评论的新回复
| 得票最多

我要回帖

更多关于 sublime text 编译c 的文章

 

随机推荐