mingw不能安装_Fortran软件安装&环境配置:MinGW-w64(命令)/Parallel Studio(图形)

40c097f218ae1519a859ceb625fe7c4d.png
Fortran是科学计算界经典而常青的重要语言之一,尤其在高性能计算 (HPC) 领域。时至今日,英特尔 (Intel) 公司仍在为它提供高性能的函数库和语言特性支持,代表软件产品就是Parallel Studio,这是一个以Fortran编译器 ifort、C/C++编译器icl为核心的庞大软件库。
与此同时,一个著名且仍然活跃的开源项目MinGW-w64 (Minimalist GNU for Windows,64位分支) ,则为我们提供了经典的 轻量型编译器 gfortran在Windows上的一个实现。gfortran原是著名开源项目GNU的产品GCC (GNU Compiler Collection) 的一部分,因在Linux上的广泛易用而闻名。

Intel Parallel Studio(以下简称IPS)功能全面而强大,更是包含了高性能计算极其有用的MKL (Math Kernel Library)。但另一方面,这也直接导致其搭载了太多于新手无用的组件,造成了空间上的臃肿。而且要配置好IPS的完整开发环境 (Windows),还必须搭配上Microsoft Visual Studio (简称VS),VS也是个吞噬空间的主(Mac平台需搭配Xcode,一样的情形)。另外不少新手容易搞错安装顺序或勾错安装选项,造成软件装好用不了或者大量硬盘空间被浪费。gfortran虽然轻量,但缺少现成IDE (Integrated Development Environment,集成开发环境),导致安装配置的成本颇高。

本文致力于给承接了老板任务却缺少适宜指导的苦命萌新扫除一些安装环境上的障碍,同时避免掉进一些老掉牙的教程的坑里。基于gfortran的环境配置,以及VS+IPS的环境配置,这里都会讲到,都可以试用下看看哪个更适合你。希望在确保Fortran功能正常可用的前提下,尽可能精简组件节省空间(尤其是IPS,随随便便浪费10GB+空间很容易)。

本文适用于Windows系统,Mac和Linux同样可以使用IPS或gfortran,且用法类似,但安装步骤上相去甚远;除非是类Unix系统老手,否则本文参考价值不大。

gfortran环境配置

Tip: 由于同属MinGW-w64软件包的产品,gfortran的环境配置步骤可以完全效仿gcc (C语言)的环境配置步骤。这篇文章的步骤要介绍得详细很多,可以对照着看。
追远·J:基于 VS Code + MinGW-w64 的C语言/C++简单环境配置,专致小白​zhuanlan.zhihu.com
c90826763f050888507c075f6827d52a.png

原材料

  • Windows 64位的电脑
  • MinGW-w64编译器包
  • VS Code文本编辑器
32位的系统倒也不是不能用,但一定会遇到比64位系统更多的问题;做科学计算没任何理由使用32位系统

编译器下载和配置

gfortran不是一个独立的软件,它是MinGW-w64软件包的一部分,其下载地址为

https://sourceforge.net/projects/mingw-w64/files/​sourceforge.net

拉到下面,建议选择这一项,

6a89a9297cb52c92352dbc9aa08a480a.png

下载下来的文件应该是一个名为x86_64-8.1.0-release-win32-seh-rt_v6-rev0.7z、7z格式的压缩包,几十MB大小。

这个网站访问和下载的速度可能很感人,没有耐心或手段的,可以私戳作者获取该软件包

确保你系统里有能解压它的解压缩软件,要是没有,推荐Bandizip 6.x版本(下载地址https://www.bandisoft.com/bandizip/old/6/)。压缩包内是个单文件夹,强烈建议直接解压至某个盘的根目录,比如这里演示的这样;或者某个全英文、不包含空格且尽可能短的目录下,整条路径中绝不要出现任何中文!

8af0c992e7005be9052dba22bab426a5.png

如此这般,所有文件都会被定向解压至C:mingw64目录下,免去二次搬运文件的麻烦。

打开解压目录可以看下这套编译器的大体结构,其中的bin文件夹里面就包含着我们需要的gfortran编译器。现在需要设置环境变量,以使它全局可访问。

646de0502817baadee6e7d477b4ee045.png
ming64文件夹的内容

ff4cefe3044b6a9a85873189b7d881e2.png
mingw64bin文件夹的内容,gfortran位于其中
注意,虽然你可能只用gfortran,但文件夹中其他的资源也是有用的,放在那不可随意移动或删除!

点击Windows 10任务栏上的搜索框,或者按快捷键Win+S,键入“环境变量”,选择弹出的“编辑账户的环境变量”选项。不建议选择“编辑系统的环境变量”!(避免误操作对系统造成大的损害)

ff53e759c6f5dc5fe380a17daed395e1.png

接下来选择上方的Path变量,编辑

19d22b1f7e9881426ae6da3a6bddc580.png

然后单击下方空白处,选择“新建”,按照之前的解压目录,把bin文件夹的完整路径添加进去,然后一路确定退出。

27bff2371a7be2d0fee31e10bcce38cc.png

接下来还是在搜索框中,输入“cmd”,启动命令提示符(就是所谓的命令行、终端,command line),输入以下命令并回车

gfortran --version

如果输出下面的内容,那恭喜你,你的编译器配置成功了!否则,请检查环境变量Path是否配置正确。

1950b88493437cc76abed496d651207d.png

代码编辑器

代码编辑器原则上不固定地非得是某个软件,你可以使用任何纯文本编辑器(甚至包括系统自带的记事本)编写你的Fortran代码,只要最后保存为*.f90文件,(在代码没写错的情况下)它跟专用编辑器写出来的代码文件无任何区别,都可以被gfortran编译器识别并编译。源代码文件被gfortran编译后,(默认情况下)即可生成一个在Windows上能直接跑起来的.exe程序。

但专门的代码编辑器,能为我们编写代码提供诸多极其有用的辅助功能,比如代码高亮(为不同部分打上不同的颜色)、实时语法错误检测(及时发现缺字错字等低级错误)、更漂亮的界面(颜值也是生产力)、常用的代码片段(方便准确地敲出大段固定格式的代码)等,并方便我们整理和访问文件资源,代码和程序等。

这里推荐使用的VS Code(Visual Studio Code,也是微软的产品,但注意不是VS,别搞错了)仅仅是一个示例,下载地址为,安装包几十MB

https://code.visualstudio.com/​code.visualstudio.com

下载安装后为英文界面。如有需要,选择左侧“插件”栏(3+1个小方块的图标),搜索“Chinese”,安装“Chinese (Simplified) Language Pack for Visual Studio Code”。

74b76db9d1e66183a63592b1df54c998.png

然后,继续搜索“Fortran”,安装“Modern Fortran”,这是个为Fortran提供了部分语言支持的插件。全部装完后重启VS Code。

就本人所知VS Code插件市场中尚不存在对Fortran提供完整语言支持的插件(可能是因为Fortran太小众),这是我能找到的一个功能相对全面的了,如有更好的推荐欢迎留言。

ea1a25dfe6ccf1bdd09fb2059fcd99fd.png

重启完后,gfortran环境即已配置完成。

任何时候VS Code本身更新了或者安装了新插件、更新了已有插件,都建议重启软件以使之生效,这是常识。

下面演示它的简单使用。打开VS Code,然后选择【文件】→【打开文件夹…】,随便选一个你方便的、路径中不包含任何中文的文件夹。

bcb3b4b6b155b5024921bbf53845e9c5.png

然后点击按钮新建文件,随便啥名,注意别把后缀名忘了,Fortran源代码一般是.f90。VS Code无从知道你是要编写什么语言,所以后缀名是必需的。

400fb59df09c96867100a637c31c1c57.png

比如我新建了个名为hello.f90的文件,输入了一个最简单的Hello World程序代码。确保代码写完写对后就可以开始正式的编译任务了。

请注意,每次写完新的代码或者对代码进行过修改之后,执行编译任务之前,务必记得按快捷键Ctrl+S保存!保存!保存!除了避免辛辛苦苦写的大量代码丢失,更重要的是要使编译器从硬盘上读到的代码与你写的一致,未保存的代码要么压根在硬盘上不存在,要么就还是你曾经编写过的旧版。或者你可以选择开启VS Code的自动保存功能

19068df2f77efdb82ecb6853a211a166.png

保存后按【Ctrl】+【`】(字母【Q】左上方那个按钮) 打开终端(在Windows 10上默认调用的是系统的PowerShell,跟之前的命令提示符差不多),

====分割线1====

输入命令

gfortran hello.f90

并回车,即可编译你的代码。该命令将调用之前装好的gfotran编译器,读取我上面编写的hello.f90代码文件,在当前文件夹下生成一个名为a.exe的程序文件。这就完成了“编译”的任务。

注意这一步仅仅是生成了目标程序,但还没有执行它。为了使刚才生成的程序跑起来,继续在终端中输入

.a.exe

并回车即可。

====分割线2====

分割线1、2间的两步是最简单的操作方法,但有个不小的问题——目标程序命名是固定的a.exe,这将导致你每次编译了新的代码后都会把旧有的a.exe程序覆盖掉。为了能自定义目标程序的名称,需要在编译命令中添加额外的内容,一般采用如下形式

gfortran -o arbitraryName hello.f90

这种形式将指定生成程序的名字为arbitraryName.exe(该版本的gfortran会自动为程序文件添加扩展名.exe,若你填写的是带扩展名的完整路径也不会有错;可以与源代码重名,因为扩展名会区分它们)。

这时要执行这个程序,需要输入对应的程序名,比如这里输入到终端里的命令就应该是

.arbitraryName.exe

注意.是文件路径的一部分,在默认终端中表明后面是当前目录下的可执行文件时是必需的不能省略,否则终端可能因为安全原因拒绝你程序的执行。

下图以将目标程序命名为 myhello.exe为例做了编译和执行这两条命令的示范

0435b03bb12e5e1f47dca95acf352f49.png

Parallel Studio+Visual Studio环境配置

如果你硬件配置还算不错(C盘是一块性能不错的SSD固态且空间能空出几十GB甚至更多,处理器和内存能流畅看1080P以上视频),那么基于Parallel Studio+VS的Fortran环境配置也是不错的,毕竟可以使用闻名遐迩的MKL库,还有上手即用的一键编译和执行方式(不必像上面那样在终端里敲命令),以及诸多高级调试工具供你探索,代码报错的信息也更加人性化。这里会尝试配置得相对精简些,尽可能给新手减少硬盘占用。

关于本环境的配置,作者还制作了一个视频,嫌文字看着累晕的可以参考
知乎视频​www.zhihu.com

Visual Studio和Parallel Studio的安装包请自行上网搜索,前者有永久免费的社区版,后者是收费软件但有对学生的特殊许可方式,请合理使用你的权益。

Visual Studio安装

首先,请注意系统和软件的适配性。Windows 7和Windows 8/8.1不支持Parallel Studio 2019及更高版本,所以Win8和Win7用户最高只能选择Parallel Studio 2018,而这又将导致能搭配的Visual Studio版本限制在2017或2015,最新的VS 2019就甭想了;

如果系统是Windows 10的,则可以选择Visual Studio 2019+Parallel Studio 2019 update4以上版本,包括2020(VS 2019不支持IPS 2019update3以下版本);或者Visual Studio 2017/2015+Parallel Studio 2019/2018

另外我的行文顺序表明,Visual Studio必须先于Parallel Studio进行安装。后者将在安装时将检测到前者并嵌入其中,否则将导致相关功能不可用。

Visual Studio为我们提供的是编写Fortran代码的壳子(界面)以及部分公共组件,有得选的话推荐使用2017或2019,VS 2015不允许我们放弃C#、VB两个语言环境,会白白浪费4~6GB空间;2013或更老版本除非有傻瓜教程指导你安装否则不建议考虑。下载安装VS 2017或2019时,唯一需要勾选的是“使用C++的桌面开发”。

eed41c80ff1b35110ae9a8fbd48c6ee8.png

其他的工作负载就别加进来了,Fortran编程铁定是用不到的。安装详细信息下面列举出被囊括了的组件,保持默认即可。请看清楚勾选的内容,多勾了东西可能浪费几GB~~几十GB的空间,该勾上的没勾上可能导致软件装好Fortran用不了。以上负载约消耗你不到2GB流量、5GB硬盘空间

如果你用的是2015,请务必选择“自定义”安装,先去掉默认的勾选,然后勾选“适用于Visual C++的公共工具”一项即可,一共占用约8GB。详细勾法在上面的视频中有演示。

Parallel Studio安装

这个安装过程也是要特别注意的,整个安装包虽然也就3GB,但默认安装能吃掉你近15GB硬盘空间,虽然能保证Fortran功能可用但浪费的东西太多。另外它安装过程容易卡住,请多点耐心。安装错误很容易导致接下来在Visual Studio中找不到Fortran组件,请务必重视。

安装时,最少需要这4项,只需约4GB空间

298ee867055610d60dc8b6292fd3120c.png

你可自行探索还能不能更少,比如那些C++的组件,但是不建议压榨得太厉害。

接下来的安装过程中,会有个警告界面,请确认最多只有这个警告,否则IPS向VS的嵌入将出现问题,强行安装纯粹浪费时间。你应该取消此安装,回过头确认下VS跟IPS版本是否搭配,系统是否适配,VS是否正确勾选了“使用C++的桌面开发”等等,再重试。

9dab7fdd5205ed9c3a07206c928996e8.png

下一步将输入许可密钥,请自行在Intel官网获取适合你的许可;同时该页面上有行蓝色小字“Visual Studio Integration”,请点进去确认你的Visual Studio被检测到,然后就可以安装了。安装时会显示安装进度,最后一步就是Visual Studio Integration,可能会卡很长时间,请耐心等待,这是集成到Visual Studio的关键一步。

Visual Studio的使用

打开Visual Studio,选择【文件】→【新建】→【项目】,

bc10e86902b88dd26c1a6fd59be076ac.png

选择Intel Visual Fortran,新建一个Console Application - Empty Project,在【解决方案资源管理器】中添加你的Source Files,即源代码文件。

这里需要多句嘴,执行代码时,建议使用Ctrl+F5,不要直接按F5,否则会启动大量不必要的调试负载,导致程序执行前会有或长或短的卡壳,且默认会在执行完时自动退出,可能导致你看不到输出结果。Ctrl+F5启动无调试的执行,程序执行完会自动暂停,无需你添加pause语句

附加说明

本方法安装的VS同样也可以编写C/C++(事实上Intel Fortran的很多基础组件用的就是C/C++的,这也就是为什么要给VS安装C++功能的原因),具体可以参考

追远·J:C语言/C++初学——Visual Studio的环境安装配置与使用​zhuanlan.zhihu.com
ea891da9749c8002b1a565abc80cdb2d.png

结语

基于MinGW-w64和Parallel Studio的环境配置互不干扰,有条件的都可以尝试。前者都是开源免费软件按,节省硬盘空间(林林总总加起来也就几百MB),但不可避免一些命令行的操作,且缺少易用的调试工具(需要用gdb,需要学习使用方法)以及MKL这大神器;后者除了10GB规模的硬盘占用几乎没有缺点,是真正成熟的集成开发环境,但IPS需单独申请许可,且一次有效期最多一年,带来了比较麻烦的授权问题!教程只能提供操作步骤,个中优劣还需读者自行体会。

  • 0
    点赞
  • 1
    收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:1024 设计师:我叫白小胖 返回首页
评论
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值