[Sublime Text 3]_[配置C/C++开发编译运行环境]

本文介绍如何在SublimeText3中配置C++开发环境,包括编译运行设置、头文件跳转和gdb调试。通过自定义快捷键和编译配置,提升C/C++开发效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

场景

1.Sublime Text 3作为老牌的编辑器性能和稳定性还是很不错的. 它一般只启动了单进程, 不像vscode那样启动一个简单的项目全部进程加起来基本上都要300M的内存使用量. 如果只是想快速轻便验证C++程序,它还是比vscode方便和快速的.

2.Sublime Text 3需要购买注册, 但是也可以不注册,不注册它就是偶尔会弹出窗口提醒你注册,关掉可以继续使用.

安装Sublime Text 3

下载安装Sublime Text 3

说明

1.Sublime Text 3C++支持官方只有语法高亮支持,没了!它也有项目单独的编译运行配置,也有全局的编译运行配置。项目配置不是必须的,可以通过菜单->Project->Save Project As...来保存当前所有打开的文件和文件夹作为配置项,配置项里也可以添加构建配置,和全局的基本一样.详细的说明点这里.

项目文件例子.sublime-project. 配置好的可以在Tools->Build System里找到构建名字.name

{
	"folders":
	[
		{
			"path": "."
		},
		{
			"path": "E:\\Project\\Company\\73.wtl-project"
		}
	],
	"build_systems":
	[
          {
        	"name":"make-cygwin-test",
        	"cmd": ["E:/software/cygwin64/bin/make.exe","-C","${project_path}\\test\\cygwin","-f", "${project_path}\\test\\cygwin\\Makefile","CONF=Debug"],
        	"file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
        	"working_dir": "${project_path}\\test\\cygwin",
        	"selector": "source.c, source.c++",
        	"env":
        	{
        		"PATH": "E:/software/cygwin64/bin"
        	},
        	"variants":
        	[
        		{
        			"name": "Run",
        			"cmd": ["${project_path}\\test\\cygwin\\dist\\Debug\\app.exe","--gtest_filter=test_ScanPartition.TestWindowsFileRecovery"]
        		},
        		{
        			"name": "Clean",
        			"cmd": ["E:/software/cygwin64/bin/make.exe","-C","${project_path}\\test\\cygwin","-f", "${project_path}\\test\\cygwin\\Makefile","CONF=Debug","clean"]
        		}
        	]
        },
        {
        	"name":"make-cygwin",
        	"cmd": ["E:/software/cygwin64/bin/make.exe","-C","${project_path}\\cygwin","-f", "${project_path}\\cygwin\\Makefile","CONF=Debug"],
        	"file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
        	"working_dir": "${project_path}\\cygwin",
        	"selector": "source.c, source.c++",
        	"env":
        	{
        		"PATH": "E:/software/cygwin64/bin"
        	},
        	"variants":
        	[
        		{
        			"name": "Run",
        			"cmd": ["${project_path}\\cygwin\\dist\\Debug\\app.exe"]
        		},
        		{
        			"name": "Clean",
        			"cmd": ["E:/software/cygwin64/bin/make.exe","-C","${project_path}\\cygwin","-f", "${project_path}\\cygwin\\Makefile","CONF=Debug","clean"]
        		}
        	]
        }
    ]
}

2.其实Sublime Text 3开发C/C++就只是缺少头文件跳转和gdb集成, 如果这个集成了, 未必不如vscode.

Cygwin C/C++开发编译运行配置

1.选择菜单->Preferences->Browse Packages...打开了配置目录,进入User,新建一个g++.sublime-build文件.
增加以下内容,cmd就是运行的命令,env设置编译后可执行文件的运行搜索目录, 比如有对c++的dll依赖,需要把E:/software/cygwin64/bin加入配置。当然也可以在系统环境变量path添加这个路径,但是会污染运行环境,不推荐这样做。-std=c++11是对C++11的支持, 当然这个也就是g++的编译参数,关于c++11我开了一个学院课程, 发布完后欢迎来学习C++11语言特性和标准库.variants是增加另外的任务,比如以下增加了运行任务, 在按ctrl+shift+b时会让你选择g++或者g++ - Run任务执行.

{
	"cmd": ["E:/software/cygwin64/bin/g++.exe","-std=c++11", "${file}", "-o", "${file_path}/build/${file_base_name}"],
	"file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
	"working_dir": "${file_path}",
	"selector": "source.c, source.c++",
 	"env":
 	{
 		"PATH": "E:/software/cygwin64/bin"
 	},
	"variants":
	[
		{
			"name": "Run",
			"cmd": ["${file_path}/build/${file_base_name}"]
		}
	]
}

2.编辑好g++.sublime-build之后,我们需要在需要编译的.cpp文件目录新建一个build目录, 以便放编译输出. 如果需要放项目目录,那么可以把项目目录拖放到OPEN FILES窗口里。如果没有显示OPEN FILES窗口,可以通过菜单View->Side Bar->Show Open Files.

在这里插入图片描述

3.选择菜单Tools->Build System->g++, 会应用上我们设置好的编译配置. 首页打开test.cpp文件, 之后按ctrl+shift+b,选择弹出的g++,那么就会编译. 在以下的输出窗口会显示编译结果。

在这里插入图片描述

编译错误:

在这里插入图片描述
选择g++ - Run就会运行, 在以下的输出窗口会显示输出, 也可通过点击左下角的小窗口,选择Build Result重新显示输出窗口。

在这里插入图片描述
3.调试的只能进入gdb环境里,我在当前项目建了一个批处理:

cmd-gdb-debug.bat

cmd /K "set path=%path%;E:\software\cygwin64\bin; & gdb --version"

之后建一个批处理gdb-init-command.bat来进行加载断点配置文件和运行指定目录下的exe.当然这个批处理要在cmd-gdb-debug.bat打开的命令行里运行才可以。调试只能通过原始的输入gdb命令调试了。关于gdb调试可以看命令行使用gdb调试程序简单应用.

gdb --command=breakpoint.txt --args dist/Debug/app.exe  

其他

1.为了方便开发,我添加了一些自定义快捷键。在菜单Preferences->Key Bindings,在右边的User配置项里添加以下的配置,特别好用的就是ctrl+shift+r可以在项目里跳转到指定的函数.alt+/自动完成.ctrl+d删除行.ctrl+shift+f重新缩进,简单版的格式化代码。

[
	{ "keys": ["ctrl+d"], "command": "run_macro_file", "args": {"file": "Packages/Default/Delete Line.sublime-macro"} },
	{ "keys": ["ctrl+shift+r"], "command": "build", "args": {"variant": "Run"} },
	{ "keys": ["ctrl+shift+f"], "command": "reindent"},
	{ "keys": ["alt+/"], "command": "auto_complete" },
	{ "keys": ["ctrl+shift+r"], "command": "goto_symbol_in_project" }
]

2.至于多个文件的项目编译,只能通过makefile来配置编译,关于makefile的配置,可以看 通用Makefile配置编译选项. 更完整的通过分析头文件是否更新来编译查看从netbeans里提取的通用构建C++项目的Makefile文件.

参考

Build Systems

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

白行微

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值