シリーズ目次
- はじめてのFortran開発 ~windowsにfortran開発環境を構築する編~
- はじめてのFortran開発 ~Fortran製オープンソースFEM解析プログラムをビルドしてみる編~
1. はじめに
このシリーズは、はじめてFortranで開発することになった私の初心者の記録です。
そろそろ Fortran も古くなるだろうと敬遠していましたが、Fortran製で現在でも活発に開発・更新されているプログラムが存在し未だに現役の言語です。今更ながらFortranをまじめに勉強してみようと思い立ちました。
今回は、 windows に gfortran をインストールするところを書きます。
2. GFortran のインストール
Fortran を無料で楽しむには GNU Fortran (GFortran) というコンパイラをインストールすればいいらしい
2.1 GFortran のインストーラーをダウンロードする
2.1.1 下記の URL から TDM GCCのdownloadページを開く
2.1.2 tdm-gcc-webdl.exe ボタンをクリックしダウンロードする
2.2 GFortran をインストーラーする
2.2.1 tdm-gcc-webdl.exe を実行
ダウンロードしたtdm-gcc-webdl.exeを実行し,ダイアログの指示に従いインストールを行う.
- デフォルトのインストールディレクトリは、
C:\TDM-GCC-64
であった. - ダイアログの項目が「New Installation:Choose Components」 (NextボタンがInstallボタンに変化した項目)の時に[Components] → [gcc] → [fortran] に必ずチェックをつけて,Installボタンを選択する.
2.3 正常にインストールできたか確認する
インストールが適切に終了すると,コンパイラに相当する実行ファイルgfortran.exeが C:\TDM-GCC-64\bin
内に作成され,パスが通されてどこからでも実行できる状態となる.コマンドプロンプトを起動して,
gfortran --version
と入力すると,
GNU Fortran (tdm64-1) 10.3.0
Copyright (C) 2020 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
のように表示されれば,インストールは成功である.
3. テストプログラムを実行してみる
3.1 拡張機能から Modern Fortran
をインストール
Vs Codeで 拡張子 .f90 のファイル作成し、表示させてみると
Marketplace には、'.f90' ファイルに役立つ拡張機能があります
というメッセージが出ますので、MarketPlace で検索
ボタンを押下する
3.1.1 拡張機能から Modern Fortran
をインストールします。
3.1.2 Modern Fortran
の設定
インストールされた「Modern Fortran」を右クリック→拡張機能の設定
gfortranの場所を指定します。
C:\TDM-GCC-64\bin\gfortran.exe
3.2 テストプログラムを実行してみる
3.2.1 下記のテストプログラムを書きます
program hello
print *, 'Hello World!'
end program hello
3.2.2 手順1. fortranソースコードをコンパイル
fortran を実行するには、
- コンパイル
- 実行
の2つの手順が必要です。
コンパイルするには、ターミナルで以下のコマンドを実行します。
gfortran -g -o <出力ファイル名> <プログラムファイル名>
例えば下記のようにコマンドを実行すると、 test.exe ファイルが生成されます
gfortran -g -o test test.f90
3.2.3 手順2. 生成された test.exe を実行
ターミナルで以下のコマンドを実行します。
./test.exe
Hello World!
を表示されれた成功です。
4. Vs CodeでFortranをデバックできるようにする
fortran で書かれたソースコードをコンパイルすることに成功しました。
次は、ソースコードの途中にブレークポイントを設定して、実行途中でブレーク(中断)できるようにvscodeの設定を行います。
4.1 .vscode フォルダに 2つのファイルを作成する
.vscode
フォルダに launch.json
とtasks.json
という名の2つのファイルを作成します。
4.1.1 tasks.json を以下のように設定する
{
"version": "2.0.0",
"tasks": [
{
"label": "build",
"type": "shell",
"command": "gfortran",
"args": [
"-g",
"-o",
"${workspaceFolder}/${fileBasenameNoExtension}",
"${fileBasename}"
],
"group": {
"kind": "build",
"isDefault": true
},
"presentation": {
"echo": true,
"reveal": "always",
"focus": true,
"panel": "shared",
"showReuseMessage": true,
"clear": false
}
}
]
}
"command": "gfortran",
"args": [
"-g",
"-o",
"${workspaceFolder}/${fileBasenameNoExtension}",
"${fileBasename}"
],
この部分が、gfortran -g -o <出力ファイル名> <プログラムファイル名>
のコマンドを実行するように設定している部分で、
このタスクを "build"
という名前として登録しています。
4.1.2 launch.json を以下のように設定する
{
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) 起動",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/${fileBasenameNoExtension}",
"args": [],
"stopAtEntry": true,
"cwd": "${workspaceFolder}",
"environment": [],
"externalConsole": false,
"MIMode": "gdb",
"miDebuggerPath": "C:/TDM-GCC-64/bin/gdb.exe", //確認して書き込む
"setupCommands": [
{
"description": "gdb の再フォーマットを有効にする",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
],
"preLaunchTask": "build" // tasks.jsonの"label"タグの値を書く
}
]
}
"miDebuggerPath": "C:/TDM-GCC-64/bin/gdb.exe",
この部分はgfortranをインストールしたフォルダに gdb.exe
が存在することを確認し、そのパスを記述する
4.2 ブレークポイントを設定して事項してみる
4.2.1 実行する方法は、 VSCODE の ▷ ボタンをクリックする
ブレークポイントで、実行が中断したことが確認できます。
実際に開発をするときは、このように途中で止めながら開発をすすめていくことになります。
次回
次回は、Fortran製オープンソースのプログラムをダウンロードし、プログラムをビルドしてみることにチャレンジしたいと思います。
ありがとうございました。