Mac で fortran を使う

fortranコンパイラ言語なのでコンパイラが必要です。
ここではhomebrewを使ってgfortranをインストールします。

gfortranをインストール

インストールには時間がかかります。最大1時間弱です。
私の環境
MacBook Pro (13-inch, Mid 2012)
macOS Sierra
ストレージ HDD

で1時間程度かかりました。人によっては30分強くらいで終わるそうです。 しかし時間はかかります。

homebrewのインストール

homebrewを使うのでhomebrewをインストールしてください

mashiroyuya.hatenablog.com

homebrewでgccのインストール

gfortranをインストールしたいのでbrew install gfortranとしたいのですが
gfortranはgccに統合されたようなのでgccをインストールします。

ターミナルを開いて

$ brew install gcc

を入力してEnterでインストールが始まります。

make boostrapでめちゃくちゃ時間がかかります。ファンもめっちゃ回って心配になりますね。

やっと終わりました

🍺  /usr/local/Cellar/gcc/6.2.0: 1,436 files, 275.3M, built in 67 minutes 23 seconds

一時間以上かかりました。途中壊れないか心配なくらいだったんですけれども。

ではgfortranがインストールされているかをコマンドで確かめます。

$ which gfortran
/usr/local/bin/gfortran

ちゃんとあるようです。ではfortranコンパイルしてみましょう。

fortranコンパイル

定番の Hello World!をターミナルに出力するというプログラムを組んでみましょう。

fortranコンパイル言語なのでソースコードを書いて、それをコンパイルすることで実際に動いてくれる実行ファイルが生成されます。なのでファイルが複数できるのでフォルダ(ディレクトリ)を作ってそこにソースコードを保存しましょう。

具体的にやってみます。

フォルダの作成

ソースコードを保存するフォルダを作ります。
今回はデスクトップに作りました。

f:id:mashiroyuya:20161122153124p:plain

フォルダ名はHelloFortranにしました。

プログラミング

プログラムを書いていきます!
今回はfortranがちゃんと動くかを見るのでコピペでやってみてください。

program hello
  print *, 'Hello World!'
end program hello

これをコピペして適当なエディタでプログラムを書いてみましょう。
自分はAtomというエディタを使いました.

f:id:mashiroyuya:20161122153531p:plain

プログラムを書いたら先ほど作ったデスクトップの中にあるHelloFortranというフォルダに保存しましょう。ファイル名はhello.f90にしておきましょう。

fortranのバージョンによりますがここではfortranの拡張子ha.f90にしましょう。

では保存ができたところでコンパイルと実行を行なってみます。

コンパイルと実行

コンパイルはターミナルで行います。
しかしターミナルで先ほど作ったhello.f90のファイルがあるHelloFortranフォルダへと移動しなければなりません。

まずHelloFortranフォルダはデスクトップ(desktop)にあるのでそこへと移動します。 以下のコマンドをターミナルで実行してください。

$ cd desktop

でデスクトップへと移動できます。cdはチェンジ ディレクトリの略でディレクトリ(フォルダ)を移動するコマンドです。

次に HelloFortran フォルダへと移動します。

$ cd HelloFortran

これでHelloFortranへと移動できました。

f:id:mashiroyuya:20161122154556p:plain
ターミナルの上の部分もしくはコマンドを打つところの現在のディレクトリを表示しているところに画像のようにHelloFortranと出ていればokです。

ではHelloFortranまでこれたのでコンパイルしてみましょう。

$ gfortran hello.f90

をターミナルで実行してください。 そうすると何も起きなければOKです。コンパイル成功です。
何かエラーが出ていたらコードが間違っているので上へ戻って先ほどのプログラムをコピペし直してください。

fortranコンパイルするには

$ gfortran ファイル名.f90

コンパイルができます。

コンパイルが成功したら同じフォルダ(HelloFortranフォルダ)の中にa.outというファイルができています。これが実行ファイルです。これをターミナルから動かします。

$ ./a.out

と打てば

 Hello World!

と出るはずです。

まとめ

fortranのプログラミングのやり方。

  1. 作業するフォルダを作る。
  2. エディタでプログラムを書く。
  3. 作ったフォルダに保存する。
  4. ターミナルで作業するフォルダに移動($ cd フォルダ名)。
  5. コンパイル($ gfotran ファイル名)。
  6. 実行ファイルを実行してプログラムを動かす($ ./a.out)。

fortranは古典とか化石とか言われていますが、科学技術計算では未だ使われていますし、大学では研究室の先生が使っているから使わざるを得ないという学生も多いと思います。

少しでもそういう人の役に立てれば幸いです。