(2011年04月13日作成 --- 2011年05月31日更新)


KNOPPIX5.3.1を天文学用にチューンしてみた




0.   KNOPPIX 5.3.1(DVD-ROM版)を、8 GB の USB メモリから起動できるように
   設定した。さらに、予め、同じ USB メモリ上に空き領域を確保し、そこに 
   KNOPPIXのディスクイメージを逐次記録できるようにした(詳細はこちら)。
     さらにこのシステムに、PC-IRAF や SAOImage/DS9 などをインストールする
   ことで、基本的なfits画像の処理ができるようにした(詳細はこちら)。
     そこで、さらに、天文学の研究を行う上で(西浦クンが)頻繁に使用するような
   アプリケーションを、さらにインストールすることを試みた。
   
当初は備忘録のつもりのメモが、最近はついつい、誰かに読まれることを前提に 文章を綴っている気がする。。。 ----- I. SExtractorの入手とインストール ----- Source Extractor (=SExtractor)は、天体画像から自動的に恒星や銀河を検出し、 測光して、その結果をテキスト形式のカタログで出力するツールである。私のような 銀河観測屋には、研究で頻繁に使用する定番ソフトである。しかし、その割りに作者 の異動に合わせてなのか、公開ページが結構頻繁に変わる。 なお、SExtractor の開発報告としては、 Bertin, E., and Arnouts, S. (1996), "SExtractor: software for source extraction", Astronomy and Astrophysics Supplement (=A&AS), Vol. 117, 393-404. を参照すること。 1.1 SExtractor 2.8.6 の導入---失敗: まずは、Astromatic.net の SExtractor ダウンロードページからソースファイルを 入手した。2011年01月28日(金)現在の最新版は 2.8.6 らしい。早速、この最新版の ソースファイル sextractor-2.8.6.tar.gz をダウンロード。これを適当なディレクトリ で展開。すると、sextractor-2.8.6 というディレクトリが出てくる。インストール方法 は、この中の INSTALL ファイルを見れば書いてある。 具体的には、knoppix のアカウントで、 1) cd sextractor-2.8.6 2) ./configure 3) make root になって、 4) make install で完了。 ところが、最初の「./configure」でエラーが出て失敗。何かシステムにファイルが 足りないらしい。しばらく頑張ってもいいのだが、現在使っているSExtractorは、実は かなり前のバージョンで、それでも特に困っていないので、ここではバージョンを下げ て試してみることにする。 1.2 SExtractor 2.5.0 の導入 --- 成功: 2.8.6 と同じところから、この一つ前の 2.5.0 のソースファイル sextractor-2.5.0.tar.gz をダウンロード。適当なところで展開すると、sextractor-2.5.0 というディレクトリが 展開される。インストール方法は 2.8.6 と同じである。そして、今度はあっさりとイン ストール成功。各種設定ファイル(*.sex)やフィルターファイル(*.conv)などは、まとめて sextractor-2.5.0/config に収納されている。 1.3 SExtractor 2.4.4 --- 追記: 後で検索して気付いたが、debian 用のインストール・パッケージも公開されている ようだ。ここからダウンロードができそうだ。ただし、バージョンは 2.4.4 である。 筆者は 2.5.0 がインストールできたので、こちらは試していない。 ----- II. PEGASEのコンパイル ----- PEGASE は、銀河化学進化モデルの計算コードである。詳細は、こちらを参照。 なお、PEGASE の開発報告としては、 Fioc, M., and Rocca-Volmerange, B. (1997), "PEGASE: a UV to NIR spectral evolution model of galaxies - Application to the calibration of bright galaxy counts", Astronomy and Astrophysics (=A&A), Vol. 326, 950-962. を参照すること。 KNOPPIX 5.3.1(DVD-ROM版)にインストールされている Fortran のコンパイラは、 f77 では無く、f95 である。従って、コンパイラの方法は、knoppix のアカウントで、 f95 SSPs.f -o SSPs f95 scenarios.f -o scenarios f95 spectra.f -o spectra f95 colors.f -o colors f95 calib.f -o calib と五つのソースコードをコンパイルすればOK。 ----- III. CLOUDYのコンパイル ----- CLOUDY は光電離プラズマから放射されるスペクトルの数値シミュレーション・コードで ある。ダウンロードやコンパイルの方法はこちらを参照のこと。 今回、最新版が 08.01 とバージョンアップしていたので、これ(c08.01.tar.gz)をダウン ロードした。そして、knoppix のアカウントで、 1) 「tar -zxvf c08.01.tar.gz」として展開。c08.01 というディレクトリが出力。 2) 「cd c08.01/source」で移動 3) 「chmod +w c08.01/source/precompile.pl」として precompile.pl を実行可能にする。 4) 「cd c08.01/source/sys_gcc」として gcc 用の make ファイルの置き場所に移動。 5) 「make」 時間が結構かかることが予想されるが、これが終了すれば完了... ところが、make 実行後10分ほどで、ノーパソが熱暴走で死にました... ノーパソ全体が十分に冷えるのを待って、再度 USB メモリから KNOPPIX 5.3.1 を起動。改めて make を実行。何と今度は、ものの数分で無事コンパイル終了。 なお、CLOUDY の開発報告としては、 Ferland, G. J., Korista, K. T., Verner, D. A., Ferguson, J. W., Kingdon, J. B., and Verner, E. M. (1998), "CLOUDY 90: Numerical Simulation of Plasmas and Their Spectra", The Publications of the Astronomical Society of the Pacific (=PASP), Vol. 110, 761-778. を参照すること。 ----- IV. SPIRALのインストール ----- SPIRAL (= Surface Photometry Interactive Reduction and Analysis Library ) は 銀河の表面測光を中心とした画像解析ライブラリである。画像データの背景光除去や 等輝度線図、そして、天体の表面輝度プロファイルの作成などに威力を発揮する。元々は 東京大学大学院理学系研究科天文学教育研究センター木曽観測所を中心に、乾板による 銀河撮像データの分析用に開発されたものである。 本ページでは、開発者の一人である濱部勝氏(日本女子大学理学部数物科学科)のSPIRAL HP を参考に、SPIRAL を KNOPPIX 5.3.1 へインストールしてみた。 なお、SPIRAL をインストールするためには、PGPLOT と CFITSIO を導入しておく必要 がある。 SPIRAL の開発報告としては、 Hamabe, M., and Ichikawa, S. (1992), "Development of Surface Photometry Package SPIRAL under IRAF Environment", in Proc. of Astronomical Data Analysis Software and Systems I, Astron. Soc. Pacific Conference Series, Vol. 25, eds. D. Worrall, Biemesderfer, and J. Barnes (ASP, San Francisco), pp. 325 - 327. を参照すること。 4.1 CFITSIO の入手とコンパイル: CFITSIO は FITS ( = Flexible Image Transport System) 形式データの読み書きに必要な C とフォートランのライブラリである。2011年4月13日現在では、こちらのページから最新版の バージョン 3.27 のソースがダウンロード可能である。なお、今回は以前にダウンロードして いたバージョン 3.200 のソース cfitsio3200.tar.gz をコンパイルして使用した。 「su - iraf」 でユーザー iraf になり、適当なディレクトリで、以下を実行。 tar -zxvf 適当なパス/cfitsio3200.tar.gz --> ディレクトリ cfitsio にファイルが展開される cd cfitsio ./configure (濱部氏は ./configure --prefix=/usr/local を推奨) make make install (cfitsio/lib/libcfitsio.a が出力される) 「su - root」で root になって、 cp cfitsio/lib/libcfitsio.a /usr/local/lib/. cp cfitsio/drvrsmem.h /usr/local/include/. (2011年05月31日に追記) cp cfitsio/fitsio.h /usr/local/include/. (2011年05月31日に追記) cp cfitsio/fitsio2.h /usr/local/include/. (2011年05月31日に追記) cp cfitsio/longnam.h /usr/local/include/. (2011年05月31日に追記) で完了。 4.2 PGPLOT の入手とコンパイル: PGPLOT はグラフィック・サブルーチン・ライブラリである。こちらの公式ホームページ からソースがダウンロードできる。2011年4月13日現在の最新版はバージョン 5.2.2 である。 「su - root」で root になって、適当なディレクトリにソースファイルpgplot522.tar.gzを置く。 そして、以下のように実行。 cd /usr/local/src/ tar -zxvf 適当なパス/pgplot522.tar.gz cd pgplot/sys_linux cp g77_gcc.conf gfortran_gcc.conf vi gfortran_gcc.conf FCOMPL="g77" --> FCOMPL="gfortran" mkdir /usr/local/pgplot cd /usr/local chgrp staff pgplot cd pgplot cp ../src/pgplot/drivers.list . vi drivers.list PS VPS CPS VCPS XWINDOW XSERVE のコメントアウト「!」を解除。 /usr/local/src/pgplot/makemake /usr/local/src/pgplot linux gfortran_gcc make make clean make cpg これでコンパイルは終了。以下は、濱部氏のやり方に倣って、次のように適切な シンボリック・リンクを張る。 cd /usr/local/bin ln -s /usr/local/pgplot/pgxwin_server . cd /usr/local/lib ln -s /usr/local/pgplot/lib* . cd /usr/local/include ln -s /usr/local/pgplot/*.h . また、リンクを張った先にパスを通すために、.bashrc に export LD_LIBRARY_PATH=/usr/local/lib を追記。もしも、.tcshrc の場合は、 setenv LD_LIBRARY_PATH /usr/local/lib とする(Thanks Hamabe-san !)。 これで PGPLOT については完了。 4.3 SPIRAL の入手とコンパイル・インストール: ソースは濱部氏が管理・運営されている SPIRAL Home Page からダウンロードできる。 2011年4月13日現在の最新版は、2008-08-15 版(v2.9.992) spiral20080815.tgz である。 ダウンロードしたソースファイルを適当なディレクトリに置いて、「su - iraf」で iraf アカウントから、以下のように実行。 mkdir /home/iraf/extern cd /home/iraf/extern tar -zxvf PATH/spiral20080815.tgz cd spiral/src 続いて、src 内の幾つかのファイルの設定を書き換える。 vi SPIRAL.INC LONGOCAT = '...' --> 自前の環境に合わせる(ここでは最初に /home を追加)。 PROFDIR = '...' --> 自前の環境に合わせる(ここでは最初に /home を追加)。 vi lib/Makefile_linux FC := f77 --> FC := f95(KNOPPIX 5.3.1 に対して spiral 2.5.1 の場合) vi Makefile_linux FC = f77 --> FC = f95(KNOPPIX 5.3.1 に対して spiral 2.5.1 の場合) ROOTDIR = ... --> 自前の環境に合わせる(ここでは最初に /home を追加) SPIRALBIN = ... --> 自前の環境に合わせる(ここでは最初に /home を追加) 書き換え終了後、 ./CleanMe ./MakeMeAll でOK。make の結果が、LOG_make_spiral_linux に出力されるので、ここにエラーが 表示されていなければ成功。 最後に、 vi /home/iraf/iraf/unix/hlib/extern.pkg として、 reset spiral = /home/iraf/extern/spiral/ task spiral.pkg = spiral$spiral.cl を追記して、さらに、reset helpdb = "..........." に、 ,spiral$lib/helpdb.mip\ を加えれば、IRAF から パッケージとして SPIRAL が使えるようになる。 IRAF インストール時に導入される M51 の fits 画像でテストをしてみると、 mmprof、prfplot、isophotes は問題なく動作した。ところが、skysub を実行 してみると、背景光除去のクイック・ルックの表示後、fitting の次数を選んで 作業を続行すると、fortran runtime error とやらで、上手く行かない。 2、3回繰り返し試していたら、いつの間にかきちんと処理がなされるように なった。IRAF の再起動すらしていないのだが...少し気持ちが悪い、まぁ、今は これで良しとしておこう。 ----- V. GALFITの導入 ----- GALFIT は 銀河の2次元光度プロファイルのフィッティングコードである。 2011年4月14日現在での最新版は Version 3.0.2 であり、開発者の GALFIT Home Page で最新版のみバイナリが公開・配布されている。公開・配布されているバイ ナリは、1) Redhat Enterprise 64 bit Linux Version、2) Redhat Fedora Linux Version、3) Debian 5 / Ubuntsu Version、4) Mac OS X (Snow) Leopard Version、5) Suse Version の5種(Mac OS X については別バージョンがあるため、 厳密には6種)である。 Vine Linux 4.2 への導入方法と基本的な使い方については、以前のメモを見て 頂きたい。 なお、GALFIT の開発報告としては、 Peng, C. Y., Ho, L. C., Impey, C. D., and Rix, H.-W. (2002), "DETAILED STRUCTURAL DECOMPOSITION OF GALAXY IMAGES", The Astronomical Journal (=AJ), Vol. 124, 266-293. を参照すること。 5.1 Debian 5 / Ubuntsu Version の導入失敗: KNOPPIX のベースは Debian なのだから、ここは Debian 5 / Ubuntsu Version だろうと考えて galfit3-debian.tar.gz をダウンロード。 適当なディレクトリに置いて、 tar -zxvf galfit3-debian.tar.gz とすれば、ただ一つの実行ファイル galfit が出力される。そして、 ./galfit で実行。 ところが、 ./galfit: /lib/libc.so.6: version `GLIBC_2.11' not found (required by ./galfit) というエラーが出力。 どうやら libc.so.6 (GNU の C ライブラリらしい) のバージョンが古いとのこと。多分、 glibc を 2.11 にアップデートすれば解決するのだろうが、いくらネットを探しても、 debian 用のものが見つからない。思い余って、知ったかぶりして alien コマンドを使って rpm ファイルから deb ファイルを作成、dpkg でインストールを試みるも、依存性他いろいろ なエラーが出まくって失敗。glibc のソースからコンパイルなども試したが、こちらも依存性 や何らかのファイルのバージョン不整合で挫折。きっと知識と技術がある人から見れば、上手 く行かない理由はつまらんことなのだろうなぁ...と天井を見上げてみる。 5.2 ダメ元で他のバイナリの導入を試して失敗: 半ばヤケになりながら、 tar -zxvf galfit3-enterprise64.tar.gz ./galfit で、Redhat Enterprise 64 bit Linux Version をダウンロード、解凍して実行。しかし、 さすがに 64 bit 用では、 bash: ./galfit: cannot execute binary file とエラー表示。 次は、Redhat Fedora Linux Version をダウンロードして、 tar -zxvf galfit3-fedora.tar.gz ./galfit と実行。今度は、 ./galfit: error while loading shared libralies: libcfitsio.so.0: cannot open shared object file: No such file or directory というエラ-メッセージ。これは libcfitsio.so.0 が無いという意味だと思うが、これを 探してきて、どこかに置けば解決するのだろうか?しかし、先に Debian 5 / Ubuntsu Version で、ファイル探しに疲弊した筆者にはその気力がなかった...で挫折。 まぁ、さすがに Max OS X 用を試すのは無駄だろう、ということでこれはスルー。 5.3 Suse Version 用の導入が成功?: 最後に Suse Version をダウンロードして、以下のように実行。 tar -zxvf galfit3-suse.tar.gz ./galfit と実行。すると...今度は... GALFIT Version 3.0.2 -- August 13, 2010 Enter template file name: とテンプレートファイルの名前を要求する状態に... あれ!? 動いた!! 何で? 何はともあれ、開発者の GALFIT Home Page で配布されているお試し用の画像データなど を食わしてみると、きちんと動作して、結果もきちんと出力された。 何故か上手く行きました。ディストリビューションの問題ではないのか??? KNOPPIX 5.3.1 で GALFIT 3.0.2 を使いたい方は、Suse Version を使って下さい。

西浦クンのメモへ

西浦クンのお部屋トップページへ

東京学芸大学天文学研究室ホームページへ

東京学芸大学宇宙地球科学分野ホームページへ

東京学芸大学ホームページへ

Created: Tue Jan 04 17:55 JST 2011
Last modified: Sat JAn 23 13:15 JST 2021