忍者ブログ
Yaleで、遊んで学ぶ日々。

Yaleで、遊んで学ぶ日々。

囲碁、ときどきプログラミング、ところにより経済。
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

ご無沙汰しています。昨年末は試験やらterm paperやらで死ぬような思いをして、最近ようやく心に余裕が出てきたところです。そういう話は、気が向いたらあとで回想録に書くことがあるかもしれません。今は、まだそこまで暇じゃないんです。

前回のpostから2ヶ月以上が経過してしまいました。もうほとんど読者はいないんじゃないかと思ったのですが、不思議なことにカウンターは毎日のべ15人前後の訪問者がいると示しています。どうも、漫画の落とし方とか、Ubuntuの導入の仕方とかで結構訪れている人がいるみたいですね。あと、プゴクもいまだに根強い人気です。そういう人にとってこのブログは果たして当たりなんだろうか、それとも外れなんだろうか。少しは役に立っているなら嬉しいのですが。


タイトルの話ですが、今学期はComputational Methodsという講義を取ることにして、これを機会にFortranをはじめようと思います。僕はこの狭い部屋に2台のlaptopを持っていて、それぞれWin XPとUbuntu9.04 jauntyが入っています。さっき、両方への導入が終わって、定番の "hello, world"というメッセージを表示させるプログラムのコンパイルが完了したところです。その過程をメモしておきます。

Fortranをインストールする、と一口に言っても、ソフトウェアのダウンロードとは少し話が違うらしい。Fortranっていうのは、言語であってソフトウェアではない(ということをさっき知った)。Fortranを使うということは、まずソースコードを書いて、そいつをコンパイルして実行ファイルに変換し、その実行ファイルを動かすということだ。だから、正確には「Fortranのコンパイラをダウンロードする」というのが正しい。Latexの導入も似たような感じですね。texソースに対して作用する"latex"とか、"platex"というようなコンパイラを導入するという点では。ただ、僕は奥村晴彦の本のCDで自動で導入したので、同時にWinshellやらDvioutやら色んなソフトウェアも同時にインストールされて、そこのところの感覚が若干曖昧だった。

で、このコンパイラ、どうも色んな種類があるようだ。色々な会社がそれぞれ作っているらしい。富士通とかIntelとか。例えるなら、翻訳ソフトが色々あるっていう感じなんだろうか。フリーのものもあれば有償のものもある。名前までいろいろだ(これには最初混乱したけど、それぞれの会社が独自の名前をつけるためだと思う)。それぞれどう違うのかはさっぱりだが、とりあえずは使えれば十分なので、一番簡単そうなところから手をつけることにした。

まずUbuntu 9.04のほう。結論から言うとよーく調べたらすでに入っていた。俺の30分間のGoogle時間を返せ。どうやら、gfortranというパッケージがすでに入っているようで、一応動作確認(hello worldプログラムをコンパイルして実行)もしてみたら問題なく動いた。拍子抜け。gfortranが入っているか分からないという場合には、コンソールを開いて、
   gfortran
と打ち込んでみればいい。"no input files"と表示されたら、それは「gfortranを実行しようとしたけど、ソースファイルが指定されていないよ」というメッセージなので、gfortran自体の準備は出来ている。command not foundと表示されたら、それは「gfortranというコマンドは知らないよ」ということなので、gfortranがインストールされていないか、またはインストールされているけどパスが通っていないので見つからない、という状態だと思われる。Ubuntuでのパスの通し方は、まだ知らない。gfortranのインストールは簡単で、[System]->[Administration]->[Synaptic Package Manager]から、gfortranを探せばすぐ見つかる。

Windowsへの導入にはあらきけいすけの雑記帳というwebsiteの言うとおりにやった。もしかしたら将来C++を使ってみたくなるかもしれないし、そんなに容量は重くなかったので、MinGWも合わせてダウンロードした。

理由は分からないけど、PATHは自動では通らなかったので自分で通した。コンパイラというのは実行ファイルになっていて、通常はコマンドプロンプト上で
  [コマンド名] [ソースコード]
という形で使う。このコマンド名は、ファイル名に等しい。つまり、g95.exeというのがコンパイラのファイルなら、g95がコマンド名になる。たとえば、
  g95 hello.f90
と打ち込むと、「hello.f90というファイルに対してg95.exeという実行ファイルを使う」という意味になるのだけど、問題はその2つのファイルはどこにあるのか、ということだ。このとき、PCは、カレントディレクトリ(現在作業しているフォルダ)と、パスの通っているディレクトリの中で該当するファイルを探す(ところで、フォルダとディレクトリって何が違うの?)。だから、g95を使うとためには、g95の入っているディレクトリにPATHを通しておかないといけない。

PATHを通す方法は、
   [スタート]->[設定]->[コントロールパネル]->[システム]
でシステムのプロパティというwindowを呼び出し、
「詳細設定」タブの「環境変数」というボタンを押す。下段のシステムの環境変数というリストの中に、"Path"という変数があるので、それをクリックして反転させ、編集ボタンを押す。すでに変数値という部分に色々なパスが登録されているはずなので、最後にg95の入っているディレクトリを付け足す。セミコロンで区切ることを忘れずに。たとえば、もともとの変数値が
   c:\matlab6p5\bin\win32
だった場合(matlabだけが登録されている状態)
   c:\matlab6p5\bin\win32;C:\MinGW\bin
にすればOK.  当然、C:\MinGW\binの部分は、g95の保存場所に応じて変える。PATHが通っているかの確認は、コマンドプロンプト上で
  PATH
すると、登録されているPATHが一覧で出る。つまり、「俺はこのリストにある場所以外は探さないぜ」という意思表示だ。

初めて知ったのだけど、このPATHの登録は、コマンドプロンプトを1回閉じないと反映されないらしい。そのことに気づかずにうんうん悩んだ15分は今では良い思い出。


今年もよろしくお願いします!

PR
Calender
11 2018/12 01
S M T W T F S
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
Search in This Blog
Latest Comments
[03/30 川内のばば山田]
[03/30 川内のばば山田]
[08/06 Aterarie]
[07/05 Agazoger]
[07/01 Thomaskina]
Oldest Posts
Latest Trackbacks
フリーエリア

Barcode
Access Analysis
Powerd by NINJAブログ / Designed by SUSH
Copyright © Yaleで、遊んで学ぶ日々。 All Rights Reserved.
忍者ブログ [PR]