Mac で fortran を使う
fortranはコンパイラ言語なのでコンパイラが必要です。
ここではhomebrewを使ってgfortranをインストールします。
gfortranをインストール
インストールには時間がかかります。最大1時間弱です。
私の環境
MacBook Pro (13-inch, Mid 2012)
macOS Sierra
ストレージ HDD
で1時間程度かかりました。人によっては30分強くらいで終わるそうです。 しかし時間はかかります。
homebrewのインストール
homebrewを使うのでhomebrewをインストールしてください
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はコンパイル言語なのでソースコードを書いて、それをコンパイルすることで実際に動いてくれる実行ファイルが生成されます。なのでファイルが複数できるのでフォルダ(ディレクトリ)を作ってそこにソースコードを保存しましょう。
具体的にやってみます。
フォルダの作成
ソースコードを保存するフォルダを作ります。
今回はデスクトップに作りました。
フォルダ名はHelloFortranにしました。
プログラミング
プログラムを書いていきます!
今回はfortranがちゃんと動くかを見るのでコピペでやってみてください。
program hello print *, 'Hello World!' end program hello
これをコピペして適当なエディタでプログラムを書いてみましょう。
自分はAtomというエディタを使いました.
プログラムを書いたら先ほど作ったデスクトップの中にあるHelloFortran
というフォルダに保存しましょう。ファイル名はhello.f90
にしておきましょう。
fortranのバージョンによりますがここではfortranの拡張子ha.f90
にしましょう。
では保存ができたところでコンパイルと実行を行なってみます。
コンパイルと実行
コンパイルはターミナルで行います。
しかしターミナルで先ほど作ったhello.f90
のファイルがあるHelloFortran
フォルダへと移動しなければなりません。
まずHelloFortranフォルダはデスクトップ(desktop)にあるのでそこへと移動します。 以下のコマンドをターミナルで実行してください。
$ cd desktop
でデスクトップへと移動できます。cdはチェンジ ディレクトリの略でディレクトリ(フォルダ)を移動するコマンドです。
次に HelloFortran フォルダへと移動します。
$ cd HelloFortran
これでHelloFortranへと移動できました。
ターミナルの上の部分もしくはコマンドを打つところの現在のディレクトリを表示しているところに画像のようにHelloFortranと出ていればokです。
ではHelloFortranまでこれたのでコンパイルしてみましょう。
$ gfortran hello.f90
をターミナルで実行してください。
そうすると何も起きなければOKです。コンパイル成功です。
何かエラーが出ていたらコードが間違っているので上へ戻って先ほどのプログラムをコピペし直してください。
$ gfortran ファイル名.f90
でコンパイルができます。
コンパイルが成功したら同じフォルダ(HelloFortranフォルダ)の中にa.outというファイルができています。これが実行ファイルです。これをターミナルから動かします。
$ ./a.out
と打てば
Hello World!
と出るはずです。
まとめ
fortranのプログラミングのやり方。
- 作業するフォルダを作る。
- エディタでプログラムを書く。
- 作ったフォルダに保存する。
- ターミナルで作業するフォルダに移動($ cd フォルダ名)。
- コンパイル($ gfotran ファイル名)。
- 実行ファイルを実行してプログラムを動かす($ ./a.out)。
fortranは古典とか化石とか言われていますが、科学技術計算では未だ使われていますし、大学では研究室の先生が使っているから使わざるを得ないという学生も多いと思います。
少しでもそういう人の役に立てれば幸いです。