Sublime Text安装并配置Ada程序设计语言编译工具

风敏同学_9972

风敏同学_9972

2026-09-11

148人浏览

原创

sublime text 配置 ada 编译运行需先安装 gnat 并验证 gnatmake -v 可用,再创建含 cmd、selector(source.ada)、file_regex 的 .sublime-build 文件,同时绑定 .adb/.ads 语法高亮并处理交互输入问题。

sublime text安装并配置ada程序设计语言编译工具

Sublime Text 本身不内置 Ada 支持,但能通过自定义 build system 调用外部 Ada 编译器(如 gnatmake)完成编译运行。关键前提是:系统已安装 GNAT,且 gnatmakePATH 中可直接调用。

确认 GNAT 是否可用

这是最常卡住的一步 —— Sublime 不会报“找不到 GNAT”,而是静默失败或提示 shell_cmd: command not found

  • 在终端(Windows cmd/PowerShell、macOS Terminal、Linux bash)中执行:gnatmake -v
  • 若返回版本信息(如 GNAT 12.3.0),说明已就绪;否则需先安装 GNAT
  • Windows 推荐使用 MSYS2 + mingw-w64-x86_64-gnat(比旧版 GNAT GPL 更易集成)
  • macOS 可用 brew install gnat(Homebrew 官方仓库已支持)
  • Linux 多数发行版提供 gnat 包(如 Ubuntu/Debian 的 sudo apt install gnat

创建 Ada 构建系统(.sublime-build

Sublime 的构建系统本质是 JSON 配置,核心是让 gnatmake 正确接收源文件路径,并处理标准错误定位。

Sublime Text Build Linux版
Sublime Text Build Linux版

Sublime Text Linux x86-64 deb 安装包。官方也提供 rpm、tar.xz 和软件源安装方式。

下载
  • 菜单栏 → Tools → Build System → New Build System
  • 粘贴以下内容(适配常见 Ada 文件命名习惯:main.adb 或任意 .adb/.ads):
{
  "cmd": ["gnatmake", "-gnato", "-gnatwa", "$file"],
  "file_regex": "^(.*?):([0-9]+):([0-9]+): (error|warning): (.*)$",
  "working_dir": "$file_path",
  "selector": "source.ada",
  "encoding": "utf-8",
  "variants": [
    {
      "name": "Run",
      "cmd": ["gnatmake", "-gnato", "-gnatwa", "$file", "&&", "$file_base_name"]
    }
  ]
}
  • "selector": "source.ada" 是关键:它让 Sublime 在打开 .adb 文件时自动激活该构建系统
  • -gnato 启用溢出检查,-gnatwa 开启全部警告,适合教学和调试
  • Windows 用户注意:&&cmd 中有效,但若用 PowerShell 作为 shell,需改用 ; 或单独写 shell_cmd

关联 Ada 语法高亮与文件类型

默认 Sublime 不识别 .adb.ads,会导致 selector 失效、无语法着色、无法触发构建。

  • 打开任意 .adb 文件 → 菜单栏 View → Syntax → Open all with current extension as… → Ada
  • 或手动设置:菜单栏 View → Syntax → Ada(若未显示,需先安装 Ada 插件)
  • 推荐安装插件 Ada Language Support(通过 Package Control 安装),它提供:
    • 自动关联 .adb/.ads 扩展名
    • 基础语法高亮与括号匹配
    • 不依赖 LSP,轻量可靠

运行时输入/输出与调试注意事项

Ada 程序常需交互式输入,而 Sublime 默认构建面板是只读的,无法键入。

  • Run 变体中直接执行 $file_base_name,在 Windows 上可能闪退 —— 建议改用:["cmd", "/c", "$file_base_name && pause"]
  • macOS/Linux 下建议:["bash", "-c", "./$file_base_name; read -p 'Press Enter to continue...'"]
  • 若程序崩溃或产生异常,gnatmake 默认不生成详细栈追踪;加 -g -O0 编译,并在代码中启用 pragma Exception_Trace
  • 调试强烈建议配合外部终端:保存后,在终端中手动运行 gnatmake main.adb && ./main,更可控

真正麻烦的不是配置几行 JSON,而是 GNAT 的路径可见性、文件扩展名绑定、以及交互式 I/O 的绕过方式 —— 这三处任一缺失都会导致“点了 Ctrl+B 没反应”。务必逐项验证,别跳步。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
Aionclaw智能助手介绍
Aionclaw智能助手介绍

本专题汇总了AionClaw(AI龙虾助手)的功能介绍与在线使用入口。AionClaw是杭州趣猿人工智能有限公司推出的桌面级AI智能体,能直接在电脑上读写文件、运行脚本、操作浏览器,自动交付Word、PPT、Excel等成品。

2026.09.20

20

13

AionClaw AI智能体与电脑自动化任务执行功能使用教程
AionClaw AI智能体与电脑自动化任务执行功能使用教程

AionClaw专题整理AI智能体与电脑自动化相关功能使用教程,涵盖安装部署、AI任务执行、Skills技能、文件处理、浏览器控制、电脑操作、持久记忆、聊天工具连接以及办公、编程和内容创作等功能,帮助用户快速掌握AionClaw的实际使用方法。

2026.09.20

0

15

AI视频生成软件推荐
AI视频生成软件推荐

本专题汇总了当前主流的AI视频生成软件推荐与排行榜单,涵盖seko、AniShort、剧云、Lovart、LiblibAI及立刻mv等热门工具。同时整理了各软件在文生视频、图生视频、时长限制、画质表现及免费额度等方面的差异对比,助您快速选对适合创作需求的AI视频生成工具。

2026.09.16

180

9

ai生成视频的工具免费版合集
ai生成视频的工具免费版合集

本专题汇总了当前免费AI生成视频工具的排行榜与推荐清单,涵盖seko、讯飞智作、AniShort及剧云、Lovart等多模型集成平台。同时整理了各工具的免费额度、输出时长、水印政策及适用场景差异,助您快速选择合适工具开启AI视频创作。

2026.09.16

100

10

Pandas时间序列分析与可视化报表
Pandas时间序列分析与可视化报表

本专题整理Pandas日期转换、时间索引、重采样、滚动窗口、时区处理、plot绘图、Styler表格样式和报表输出方法。

2026.09.16

80

23

Pandas数据筛选索引与清洗处理
Pandas数据筛选索引与清洗处理

本专题整理Pandas中的loc、iloc、条件筛选、query查询、缺失值处理、重复值删除、类型转换和字符串列清洗方法。

2026.09.16

60

25

Pandas数据读取导入与文件导出处理
Pandas数据读取导入与文件导出处理

本专题整理Pandas读取CSV、Excel、JSON、SQL、Parquet等文件的方法,以及to_csv、to_excel、to_sql和to_parquet等常用数据导出流程。

2026.09.16

40

27

GDB怎么设置断点
GDB怎么设置断点

本专题介绍GDB按照函数名、源代码行号和文件位置设置断点的方法,详细说明run、continue、next、step等命令的配合使用,帮助定位程序崩溃、逻辑异常及代码未按预期执行的问题。

2026.09.11

380

28

GDB怎么查看变量值
GDB怎么查看变量值

本专题介绍GDB调试过程中查看变量值的具体方法,涵盖局部变量、函数参数、数组、结构体和指针内容查询,同时整理变量持续显示、格式化输出及无法读取变量时的排查思路。

2026.09.11

120

22

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程