[SCore-users-jp] score_runtime_resource (Re: How to change the results of "mpicc -link_info".)

Jun USHIDA ushida @ cj.jp.nec.com
2002年 10月 8日 (火) 20:35:03 JST


牛田と申します。
少し引用順を変えます。

<200210021230.g92CUkY09831 @ yl-dhcp18.is.s.u-tokyo.ac.jp>の記事において
2002年10月02日(水) 21時30分46秒頃、kameyama @ pccluster.org様は書かれました。

|> fftw という MPI にも対応した FFT プログラムを利用した
|> とある並列プログラムを Score で利用したいと考えています。
|
|1. LDFLAGS ではだめでしょうか?
|2. mpicc などが引数で指定できるのでしたら, mpicc を -L/usr/local/lib つきで
|   呼び出す script を書いてしまう手もあります.
|3. configure をいじる, もしくは configure したあとの Makefile をいじる
|   というのは無しでしょうか?
|4. いっそのこと fftw library を
|      /opt/score/mpi/mpich-1.2.0/alpha-redhat-linux/lib
|   にコピー (もしくは symbolic link) してしまうのが一番確実かも知れません.

1.と 4. ではだめでした。3,4 についてもうまく行かないようなので、
別の視点から再度質問させて下さい。

|configure などの作りに依存しますので, ソースがないと
|わかりませんけど...

とのことでしたが、 config.log の関係箇所を示します。

<----------- ここから
configure:6635: checking for guile
configure:6659: found /usr/local/bin/guile
configure:6667: result: yes
configure:6677: checking for guile-config
configure:6701: found /usr/local/bin/guile-config
configure:6709: result: yes
configure:6970: checking if linking to guile works
configure:6970: mpicc -o conftest -g -O2 -Wall -W -Wbad-function-cast -Wcast-qual -Wpointer-a
rith -Wcast-align -pedantic -I/usr/local/include -I/usr/local/include -L/usr/local/lib confte
st.c -L/usr/local/lib -lguile -ldl -lm -lfftw_mpi    -lcxml -lfftw -lm   -L/usr/local/lib -lm
 -lUfor -lfor -lFutil -lcpml -lots -L/usr/lib/gcc-lib/alpha-redhat-linux/egcs-2.91.66 -L/usr/
alpha-redhat-linux/lib >&5
/opt/score/lib/alpha-redhat-linux/libscoreusr.a(usrsetup.o): In function `setup':
/usr/src/redhat/BUILD/score-3.3/scoredlib/usr/obj.alpha-redhat-linux/../usrsetup.c:144: undef
ined reference to `score_runtime_resource'
/usr/src/redhat/BUILD/score-3.3/scoredlib/usr/obj.alpha-redhat-linux/../usrsetup.c:144: undef
ined reference to `score_runtime_resource'
collect2: ld returned 1 exit status
configure:6970: $? = 1
configure: failed program was:
#line 6970 "configure"
#include "confdefs.h"

/* Override any gcc2 internal prototype to avoid an error.  */
#ifdef __cplusplus
extern "C"
#endif
/* We use char because int might match the return type of a gcc2
   builtin and then its argument prototype would still apply.  */
char gh_enter ();
#ifdef F77_DUMMY_MAIN
#  ifdef __cplusplus
     extern "C"
#  endif
   int F77_DUMMY_MAIN() { return 1; }
#endif
int
main ()
{
gh_enter ();
  ;
  return 0;
}
configure:6970: result: no
configure:6970: error: guile-config is broken or Guile is not working.
<----------- ここまで

上記を見ると、guile という schme の実装の動作チェックをしている箇所で、
score_runtime_resource という関数がリンクできないがために configure が
error で途中で停止しているようです。

Score 3.3.2 のマニュアルでは, 
「ユーザプログラム、あるいはランタイムライブラリに
  よって実装されなければならないコールバック関数で,... 」

とありますが、もともと MPICH で動かしていたプログラムなので、
SCORE の関数を直接呼出したりはしていないはずなのです。

このエラーは、どこに問題があるのか御教示願えませんでしょうか?

環境は、
Score version: 3.3.2 
% uname -a
Linux server.score.nec.co.jp 2.2.14-6.0 #1 Tue Mar 28 16:56:56 EST 2000 alpha unknown

です。

どうぞよろしくお願い致します。
--
牛田 淳,    〒305-8501 つくば市御幸が丘34
	    phone: 0298-50-2643,  fax: 0298-56-6139
            E-mail : ushida @ cj.jp.nec.com



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