0

0

sublime如何配置Fortran编译环境_sublime科学计算编程设置【指南】

冰火之心

冰火之心

发布时间:2026-01-23 07:45:22

|

190人浏览过

|

来源于php中文网

原创

Sublime Text 需手动配置 Fortran Build System 调用 gfortran,前提是系统已安装并正确配置 PATH;需创建 JSON 格式 .sublime-build 文件,设置编译命令、错误正则、语法选择器及 Run 变体,并注意路径编码与环境兼容性。

sublime如何配置fortran编译环境_sublime科学计算编程设置【指南】

Sublime Text 本身不内置 Fortran 编译支持,必须通过 Build System 手动配置调用外部编译器(如 gfortran),且需确保系统已安装可用的 Fortran 工具链。否则任何配置都无效。

确认 gfortran 是否可用且在 PATH 中

这是最关键的前置条件。Sublime 的构建系统本质是执行 shell 命令,如果终端里都找不到 gfortran,Sublime 肯定调用失败。

  • 在终端运行 which gfortrangfortran --version,确认输出正常
  • Windows 用户注意:MinGW-w64 或 MSYS2 安装后,需把 gfortran.exe 所在目录(如 C:\msys64\mingw64\bin)加入系统 PATH
  • macOS 用户若用 Homebrew 安装,路径通常是 /opt/homebrew/bin/gfortran(Apple Silicon)或 /usr/local/bin/gfortran(Intel),但 Sublime 默认继承 GUI 环境的 PATH,可能不包含它——此时需从终端启动 Sublime:open -a "Sublime Text"subl .

创建自定义 Fortran Build System(.sublime-build)

Sublime 的构建系统是 JSON 格式文件,存放在 ~/Library/Application Support/Sublime Text/Packages/User/(macOS)、%APPDATA%\Sublime Text\Packages\User\(Windows)或 ~/.config/sublime-text/Packages/User/(Linux)。

新建文件,例如 Fortran-gfortran.sublime-build,内容如下:

墨狐AI
墨狐AI

5分钟生成万字小说,人人都是小说家!

下载
{
    "cmd": ["gfortran", "-o", "${file_base_name}", "${file}"],
    "file_regex": "^(..[^:]*):([0-9]+):?([0-9]+)?:? (.*)$",
    "working_dir": "${file_path}",
    "selector": "source.fortran, source.f90, source.f95, source.f03, source.f08",
    "shell": true,
    "variants":
    [
        {
            "name": "Run",
            "cmd": ["./${file_base_name}"]
        }
    ]
}
  • "cmd" 是编译命令;-o ${file_base_name} 输出可执行文件名与源文件同名(不含扩展名)
  • "file_regex" 让错误行能被点击跳转;Fortran 错误格式通常是 file.f90:12:5: error: ...,该正则可匹配
  • "selector" 确保该构建系统仅在 Fortran 文件中自动激活(需配合语法高亮插件,如 Fortran Syntax
  • "shell": true 允许直接写 gfortran 而非完整路径(依赖 PATH);若想硬编码路径(避免 PATH 问题),把 "gfortran" 换成 "/usr/local/bin/gfortran""C:\\msys64\\mingw64\\bin\\gfortran.exe"
  • "variants" 添加了 Run 变体,编译后按 Ctrl+Shift+B → 选 Fortran-gfortran — Run 即可执行

常见报错与对应处理

构建失败时,Sublime 底部会显示错误面板,重点看第一行和路径是否合理。

  • gfortran: command not found → PATH 未生效,或 shell 设为 false 但没写绝对路径
  • undefined reference to `main' → 源文件没写 program ... end program,或用了 subroutine/function 却没主程序
  • 中文路径下编译失败(尤其 Windows)→ Sublime 默认用系统 ANSI 编码读取路径,而 gfortran 期望 UTF-8;解决方法:避免中文路径,或改用相对路径构建(如 "cmd": ["gfortran", "-o", "a.out", "${file_name}"]
  • 修改代码后 Run 仍执行旧二进制 → Sublime 不自动清理上一次输出;可在 "variants"Run 中加清理步骤:"cmd": ["sh", "-c", "gfortran -o ${file_base_name} ${file} && ./${file_base_name}"]

Fortran 构建系统看似简单,但实际成败几乎全取决于环境变量、路径编码和编译器版本兼容性。不要跳过终端验证这一步——哪怕只多敲一次 gfortran --version,也能省掉半小时排查时间。

相关专题

更多
json数据格式
json数据格式

JSON是一种轻量级的数据交换格式。本专题为大家带来json数据格式相关文章,帮助大家解决问题。

417

2023.08.07

json是什么
json是什么

JSON是一种轻量级的数据交换格式,具有简洁、易读、跨平台和语言的特点,JSON数据是通过键值对的方式进行组织,其中键是字符串,值可以是字符串、数值、布尔值、数组、对象或者null,在Web开发、数据交换和配置文件等方面得到广泛应用。本专题为大家提供json相关的文章、下载、课程内容,供大家免费下载体验。

533

2023.08.23

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

310

2023.10.13

go语言处理json数据方法
go语言处理json数据方法

本专题整合了go语言中处理json数据方法,阅读专题下面的文章了解更多详细内容。

76

2025.09.10

scripterror怎么解决
scripterror怎么解决

scripterror的解决办法有检查语法、文件路径、检查网络连接、浏览器兼容性、使用try-catch语句、使用开发者工具进行调试、更新浏览器和JavaScript库或寻求专业帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

188

2023.10.18

500error怎么解决
500error怎么解决

500error的解决办法有检查服务器日志、检查代码、检查服务器配置、更新软件版本、重新启动服务、调试代码和寻求帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

288

2023.10.25

undefined是什么
undefined是什么

undefined是代表一个值或变量不存在或未定义的状态。它可以作为默认值来判断一个变量是否已经被赋值,也可以用于设置默认参数值。尽管在不同的编程语言中,undefined可能具有不同的含义和用法,但理解undefined的概念可以帮助我们更好地理解和编写程序。本专题为大家提供undefined相关的各种文章、以及下载和课程。

5150

2023.07.31

网页undefined是什么意思
网页undefined是什么意思

网页undefined是指页面出现了未知错误的意思,提示undefined一般是在开发网站的时候定义不正确或是转换不正确,或是找不到定义才会提示undefined未定义这个错误。想了解更多的相关内容,可以阅读本专题下面的文章。

3009

2024.08.14

菜鸟裹裹入口以及教程汇总
菜鸟裹裹入口以及教程汇总

本专题整合了菜鸟裹裹入口地址及教程分享,阅读专题下面的文章了解更多详细内容。

0

2026.01.22

热门下载

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

精品课程

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

共48课时 | 7.6万人学习

Git 教程
Git 教程

共21课时 | 2.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号