PGPLOTのインストールとコンパイル方法 の変更点


 Vine Linux 2.6,Vine Linux 3.0へのインストール記録,プログラムのコンパイル方法です.
 PGPLOTのインストール
 g77のインストール
 
 #contents
 
 
 * PGPLOTのインストール [#o9287123]
 
 ** g77のインストール [#j177f075]
 
 コンパイル時にフォートランコンパイラの g77がインストールされている必要があるので, g77が入っていない場合はapt-getをコマンドでインストールします.
 $ su
 # apt-get install gcc-g77
 
  $ su
  # apt-get update
  # apt-get install gcc-g77
 
 でインストールできるはずです.
 ソースファイルの入手
 
 ** ソースファイルの入手 [#d6503aef]
 
 PGPLOTの最新版は5.2.2です.
 
     * http://www.astro.caltech.edu/~tjp/pgplot/install.html
     * ftp://ftp.astro.caltech.edu/pub/pgplot/
 - http://www.astro.caltech.edu/~tjp/pgplot/install.html
 - ftp://ftp.astro.caltech.edu/pub/pgplot/
 
 などからpgplot5.2.tar.gzをダウンロードし,適当な場所に保存しておきます.
 展開
 
 ここではソースファイルを
 /usr/local/src
 ** 展開 [#u978ee76]
 
 に展開します(/usr/local以下のディレクトリで作業するにはroot権限が必要です).
 $ su
 # cd /usr/local/src
 # cp 保存場所/pgplot5.2.tar.gz .
 # tar xzvf pgplot5.2.tar.gz
 makeの準備
 ここではソースファイルを「/usr/local/src」に展開します(/usr/local以下のディレクトリで作業するにはroot権限が必要です).
 
 つぎに,インストール用のディレクトリとして
 /usr/local/pgplot
  $ su
  # cd /usr/local/src
  # cp 保存場所/pgplot5.2.tar.gz .
  # tar xzvf pgplot5.2.tar.gz
 
 をつくります.
 # mkdir /usr/local/pgplot
 ** makeの準備 [#nab34a3c]
 
 つぎに,インストール用のディレクトリとして「/usr/local/pgplot」というディレクトリをつくります.
 
  # mkdir /usr/local/pgplot
 
 このディレクトリにmakefileをつくるため,ソースを展開したディレクトリのdrivers.listというファイルをコピーし,編集します(/usr/local/src/pgplotにmakefileを作ってはいけないようです).
 # cd /usr/local/pgplot
 # cp /usr/local/src/pgplot/drivers.list .
 
  # cd /usr/local/pgplot
  # cp /usr/local/src/pgplot/drivers.list .
 
 テキストエディタで drivers.list 開き,編集します.必要なドライバのコメントアウト(行頭の「!」 )を外すと,そのドライバが使えるようになります.どのコメントを外せばいいのか詳しくは知りませんが,最低限以下のものは使えるようにした方がいいようです.
 
     * /GIF
     * /VGIF
     * /LATEX
     * /PS
     * /VPS
     * /CPS
     * /VCPS
     * /XTERM
     * /XDISP
     * /XWINDOW
     * /XSERV
 - /GIF
 - /VGIF
 - /LATEX
 - /PS
 - /VPS
 - /CPS
 - /VCPS
 - /XTERM
 - /XDISP
 - /XWINDOW
 - /XSERV
 
 (PGPLOTでグラフ出力したとき,先頭にVが付いているドライバは, Vが付いていないものと比べて表示が270度回転されます.)以上で下準備ができたので,makemakeを使ってmakefileをつくります.
 # /usr/local/src/pgplot/makemake /usr/local/src/pgplot linux g77_gcc
 コンパイル
 
  # /usr/local/src/pgplot/makemake /usr/local/src/pgplot linux g77_gcc
 
 ** コンパイル [#me31b5ee]
 
 makefileができたらコンパイルします.
 # make
 
  # make
 
 PGPLOTをCから呼び出せるように,もうひとつコンパイルします.
 # make cpg
 
  # make cpg
 
 エラーが出ずに無事コンパイル終了したら,もう使わないファイルを消します.
 # make clean
 
  # make clean
 
 rootから抜けます.
 # exit
 環境変数の設定
 
 PGPLOTのライブラリをどこからでも使えるよう,ライブラリのある場所などにパスを通します.
 ~/.bashrc
  # exit
 
 というファイル(~/ はホームディレクトリの意味)に以下を記述します.
 ** 環境変数の設定 [#h98d815f]
 
 export PGPLOT_DIR=/usr/local/pgplot
 export PGPLOT_DEV=/xserv
 export LD_LIBRARY_PATH=/usr/local/pgplot
 PGPLOTのライブラリをどこからでも使えるよう,ライブラリのある場所などにパスを通します.「~/.bashrc」というファイル(~/ はホームディレクトリの意味)に以下を記述します.
 
  export PGPLOT_DIR=/usr/local/pgplot
  export PGPLOT_DEV=/xserv
  export LD_LIBRARY_PATH=/usr/local/pgplot
 
 書いたら
 $ source ~/.bashrc
 
  $ source ~/.bashrc
 
 とするか,ログインしなおして環境変数の変更を反映させます.
 デモプログラムの実行
 
 ** デモプログラムの実行 [#q9c1e29b]
 
 では,コンパイル時に/usr/local/pgplotにデモプログラムができていますから,これをを実行して試してみましょう.
 $ /usr/local/pgplot/pgdemo1
 
  $ /usr/local/pgplot/pgdemo1
 
 とすると
 Graphics device/type (? to see list, default /xserv):
 
  Graphics device/type (? to see list, default /xserv):
 
 というメッセージがコンソールに表示されます. ?をタイプすれば使用可能なドライバの一覧が出てきます.そのままEnterを押せばデフォルトのxservで表示されます. xservで実行した場合,仮想ターミナルに
 
  version=v5.2.2
  state=OPEN
  user=hamu
  now=15-Aug-2004 22:58
  device=
  file=
  type=XSERVE
  dev/type=/XSERVE
  hardcopy=NO
  terminal=NO
  cursor=YES
  Plot dimensions (x,y; inches):     11.20,      8.41
                           (mm):    284.55,    213.70
  Type  for next page:
 
 というメッセージと,XWindow上に
 
 #ref(fig1.png,nolink)
 
 という画面が表示されます.仮想ターミナルでEnterを押せば,つぎつぎにグラフの画面が変わっていきます.他にもデモプログラムはあるので,試してみましょう.デモプログラムのソースは/usr/local/src/pgplot/examples/以下に(言語はFORTRAN), C言語のソースは/usr/local/src/pgplot/cpg/以下にあります.
 C言語から使うときのコンパイル方法
 
 
 * C言語から使うときのコンパイル方法 [#k0133591]
 
 デモプログラムを表示させて満足したら,今度は自分でつくったCプログラムから使えるようにします.そのためのコンパイルには少しオプションが必要です.コンパイルには以下のオプションを付け,g77 でやるといいようです(途中改行しません).
 $ g77 ファイル名 -I/usr/local/pgplot -L/usr/local/pgplot -L/usr/X11R6/lib -lcpgplot -lpgplot -lm -lX11
 
  $ g77 ファイル名 -I/usr/local/pgplot -L/usr/local/pgplot -L/usr/X11R6/lib -lcpgplot -lpgplot -lm -lX11
 
 うまくいかない場合はオプションを変えていろいろ試してみるといいかもしれません.ライブラリの場所 (-Lではじまる部分) などを確認してみましょう.
 
 このコンパイルラインは長いので,シェルスクリプトかMakefileを作っておくと後々楽です.
 シェルスクリプト
 
 ** シェルスクリプト [#yd1605d3]
 
 一番単純なのはつぎのようなものです.
 
 # !/bin/sh
 g77 $1.c -o $1 -I/usr/local/pgplot -L/usr/local/pgplot -L/usr/X11R6/lib -lcpgplot -lpgplot  -lm -lX11
  # !/bin/sh
  g77 $1.c -o $1 -I/usr/local/pgplot -L/usr/local/pgplot -L/usr/X11R6/lib -lcpgplot -lpgplot  -lm -lX11
 
 これを g77pgplot という名前で保存し,パスの通ったディレクトリに置きます.そして
 $ chmod +x
 
  $ chmod +x
 
 として実行権限を持たせておきます.そしたら
 $ g77pgplot ファイル名(拡張子なし)
 
  $ g77pgplot ファイル名(拡張子なし)
 
 でコンパイル可能です.
 Makefile
 
 ** Makefile [#be2ca6b1]
 
 Makefileという名前のファイルをプログラムのソースファイルと同じディレクトリに作っておけば make とタイプするだけで実行ファイルができあがります.ソースファイル名が foo.c なら,つぎのような感じです.
 
  ## Compiler, tools and options
  
  OBJS  	= foo.o
  TARGET 	= foo
  
  CC 	= g77
  CFLAGS 	= -O3 -march=i686 -fomit-frame-pointer -malign-double -funroll-loops -Wall
  INCDIRS = -I/usr/local/pgplot
  LIBDIRS = -L/usr/local/pgplot -L/usr/X11R6/lib
  LIBS 	= -lcpgplot -lpgplot -lm -lX11
  
  ## Implicit rules
  
  .SUFFIXES: .c .o
  
  ## Build rules
  
  all: $(TARGET)
  
  $(TARGET): $(OBJS)
  	$(CC) $(OBJS) -o $(TARGET) $(CFLAGS) $(LIBDIRS) $(LIBS)
  
  ## Compile
  
  .c.o: $*.c
  	$(CC) -c $*.c $(CFLAGS) $(INCDIRS)
  
  ## Clean
  
  clean:
  	rm -f $(OBJS) $(TARGET)
 
 foo の部分は実際のソースファイル名に置き換えてください.この例では最適化オプション(-O3 -march=i686 -fomit-frame-pointer -malign-double -funroll-loops)も付けています.
Valid XHTML 1.1! home > コンピュータ > グラフ・解析ツール >
リロード   新規 編集 差分 添付 複製 改名   トップ 一覧 検索 最終更新 バックアップ   ヘルプ   最終更新のRSS
Modified by 物理のかぎプロジェクト PukiWiki 1.4.5_1 Copyright © 2001-2005 PukiWiki Developers Team. License is GPL.
Based on "PukiWiki" 1.3 by yu-jiPowered by PHP 5.3.29HTML convert time to 0.002 sec.