[SCore-users-jp] PETScのインストール方法

金城 尚志 e973220 @ eve.u-ryukyu.ac.jp
2002年 12月 19日 (木) 12:57:14 JST


亀山様: 劉さま:


琉球大の金城です。
亀山様、劉様アドバイスありがとうございました。

亀山様、劉様からのアドバイスをそれぞれ反映して
設定を行いました。

しかしながら、どうも上手くインストールがいきません、
やはり
【エラー】
 /home/kinjo/petsc-2.1.3/lib/libg/linux/libpetscdm.so: undefined reference
to
 `score_self_node'
が、発生してしまいます。



亀山様、劉様からのアドバイスをそれぞれ反映して設定したのは、
以下の通りです。
(手法;1、手法:2)

■■■■■■ 手法:1  ■■■■■■

【1】
>この file に加えて
>    bmake/linux/variables
>も編集してください.
>このファイルの中で gcc, g77, g++ をそれぞれ,
>scorecc, scoref77, scorec++ に変更してください.

上記の通りに、gcc, g77, g++を変更しました。

【2】
>     config/configure_options.linux
> > --disable-share
>を入れておいてください.

このファイルはなかったので、設定はしていません。
ただ、/home/kinjo/petsc-2.1.3/bmake/linux/package
において、下記の通りにコメントアウトしているので、OKかと思われます。。

# 最後の行付近、共有ライブラリは使用しないと思い、コメントアウト
#C_DYLIBPATH     = ${CLINKER_SLFLAG}/home/alice/software/egcs/linux/lib
${CLINKER_SLFLAG}/\
home/petsc/software/BlockSolve95/lib/libO/linux
#F_DYLIBPATH     = ${FLINKER_SLFLAG}/home/alice/software/egcs/linux/lib
${FLINKER_SLFLAG}/\
home/petsc/software/BlockSolve95/lib/libO/linux


【4】
/home/kinjo/petsc-2.1.3
において、
$ make BOPT=g all

ここでは、すんなり上手くいっているようです。
エラーメッセージ、警告等はありませんでした。


【5】
/home/kinjo/petsc-2.1.3
において、
$ make BOPT=g testexamples >& examples_log
を行うと、先のメールのエラーメッセージと同じ
エラーが発生します。

$ cat examples_log

(略)
 /home/kinjo/petsc-2.1.3/lib/libg/linux/libpetscdm.so: undefined reference
to
 `score_self_node'
(略)




■■■■■■ 手法:2  ■■■■■■

【1】
とりあえず、
今まで、使っていたフォルダをすべて
削除し、新たにpetsc-2.1.3フォルダを作成

$ rm -Rf petsc-2.1.3
$ tar zxvf petsc.tar.gz


【2】
手法:1の設定を行う
(make以降の設定はしていない)

【3】
petsc-2.1.3ディレクトリ内の
makefileを編集

以下の行を追加、
LIBSは-lgmodule -lglib -ldl -lXext -lX11 -lXi -lm

【4】
/home/kinjo/petsc-2.1.3
において、
$ make BOPT=g all

ここでは、すんなり上手くいっているようです。
エラーメッセージ、警告等はありませんでした。


【5】
/home/kinjo/petsc-2.1.3
において、
$ make BOPT=g testexamples >& examples_log
を行うと、先のメールのエラーメッセージと同じ
エラーが発生します。

$ cat examples_log

(略)
 /home/kinjo/petsc-2.1.3/lib/libg/linux/libpetscdm.so: undefined reference
to
 `score_self_node'
(略)


【6】
/opt/score/bin/bin.i386-*/にあるにmpc++.exeとscorec++.exeを編集
staticの値を1から0に変更

【7】
>/home/kinjo/petsc-2.1.3/lib/libg/linux/libpetscdm.so
>はすべてのノードにマウントされているか、あるいは許可を許しているかを確認

[kinjo @ scic99 linux]$ ls -l libpetscdm.so
-rwxrwxr-x    1 kinjo    kinjo     1021030 Dec 19 12:24 libpetscdm.so


【8】
>/home/kinjo/petsc-2.1.3/lib/libg/linux/libpetscdm.so
>は標準ライブラリではないので、
>/etc/ld.so.conf
>に上記のライブラリのPATHを追加しなければなりません。
>PATHを追加したら必ずldconfigを実行してください。


# emacs /etc/ld.so.conf
で、/home/kinjo/petsc-2.1.3/lib/libg/linux/libpetscdm.so
を追加記入し、
# ldconfig


【9】
/home/kinjo/petsc-2.1.3
において、
$ make BOPT=g all

ここでは、すんなり上手くいっているようです。
エラーメッセージ、警告等はありませんでした。


【10】
/home/kinjo/petsc-2.1.3
において、
$ make BOPT=g testexamples >& examples_log
を行うと、先のメールのエラーメッセージと同じ
エラーが発生します。

$ cat examples_log

(略)
 /home/kinjo/petsc-2.1.3/lib/libg/linux/libpetscdm.so: undefined reference
to
 `score_self_node'
(略)



まだ上手くいきません。。。


一生懸命やっていますが、こちらの知識不足で、
僕の設定は亀山さん、劉さんのアドバイスをきれいに反映していないかもしれませ
ん、

どうかよろしく御願いします。




  ━┛━┛━┛━┛━┛━┛━┛━┛━┛
  琉球大学理学部 物質地球科学科
  金城 尚志 (キンジョウヒサシ)
  ━┛━┛━┛━┛━┛━┛━┛━┛━┛





SCore-users-jp メーリングリストの案内