Katsutoshi Itoh
cut-s****@maste*****
2005年 8月 6日 (土) 20:44:37 JST
伊東です。 現在の環境から。 cut-sea @ nkisi> uname -rms NetBSD 2.0.2 i386 cut-sea @ nkisi> gosh -V Gauche scheme interpreter, version 0.8.5 [euc-jp] cut-sea @ nkisi> setenv |grep LD LD_LIBRARY_PATH=/usr/local/lib:/usr/pkg/lib:/usr/pkg/xorg/lib:/usr/lib:/usr/X11R6/lib cut-sea @ nkisi> gauche-config --reconfigure ./configure '--with-slib=/usr/pkg/share/slib' '--with-local=/usr/pkg' '--with-prefix=/usr/local' '--enable-ipv6' '--with-rpath=/usr/local/lib:/usr/pkg/lib:/usr/lib' '--with-iconv=/usr/pkg' で、ちょっとこれまでと違うのがX.orgを使っている点です。 X.orgはNetBSDのpkgsrcからインストールしたので/usr/pkg以下に入ってます。 一応 glxgears 自体は問題なく動作してます。 Gauche-gl-0.4 やったこと。 tar zxvf ~/POOL/SCHEME/Gauche-gl-0.4.tgz cd Gauche-gl-0.4/ ./configure vi src/Makefile make make check なお、vi src/Makefile のところでは、 CFLAGS の先頭に -I'/use/pkg/include'を入れて-O2を外した。 LIBS の先頭に -L'/usr/pkg/lib'を挿入です。 これでmake自体はエラーなしできれいにmakeできました。 で、make checkの結果、core dumpしちゃいました。 cut-sea @ nkisi> make check cd src; make all if test X != X; then (cd cg; make all); fi cd doc; make all cd src; make check /usr/local/bin/gosh -I. -I../lib test-math3d.scm > test.log Testing gl.math3d ... passed. /usr/local/bin/gosh -I. -I../lib test.scm >> test.log Testing GL ... [1] Abort trap (core dumped) /usr/local/bin/g... *** Error code 134 Stop. make: stopped in /home/cut-sea/compile/Gauche-gl-0.4/src *** Error code 1 Stop. make: stopped in /home/cut-sea/compile/Gauche-gl-0.4 これで、test.logを見ると、 (snip) test sequence, expects (1.0 2.0 3.0 4.0) ==> ok test sequence, expects #,(quatf 1 2 3 4) ==> ok passed. Testing GL ==================================================================== <loading gl>------------------------------------------------------------------- こっから下のglのテストが完全にできてないです。 インタラクティブに試してみると、 cut-sea @ nkisi> pwd /usr/home/cut-sea/compile/Gauche-gl-0.4 cut-sea @ nkisi> gosh gosh> (add-load-path "./lib") ("./lib" "./" "/home/cut-sea/kahua/lib/kahua" "/home/cut-sea/lib/Gauche" "/usr/local/share/gauche/site/lib" "/usr/local/share/gauche/0.8.5/lib") gosh> (use gl) *** ERROR: Compile Error: Compile Error: can't find dlopen-able module "libgauche-math3d" "./lib/gl.scm":18:(define-module gl (use srfi-1) (use ... "(stdin)":2:(use gl) Stack Trace: _______________________________________ 0 (dynamic-load "libgauche-math3d" :export-symbols #t) At line 26 of "./lib/gl/math3d.scm" dynamic-loadでエラーが出てました。 っても、make check math3dはpassするし、何が悪さしてるんでしょう。 なお、src/lib* の状況は以下のような感じに出来上がってます。 cut-sea @ nkisi> ll libgauche-* -rwxr-xr-x 1 cut-sea users 1113412 Aug 6 20:26 libgauche-gl.so -rwxr-xr-x 1 cut-sea users 284420 Aug 6 20:26 libgauche-glut.so -rwxr-xr-x 1 cut-sea users 269073 Aug 6 20:26 libgauche-math3d.so cut-sea @ nkisi> ldd lib* libgauche-gl.so: -lX11.6 => /usr/pkg/xorg/lib/libX11.so.6 -lXext.6 => /usr/pkg/xorg/lib/libXext.so.6 -lm.0 => /usr/lib/libm387.so.0 -lm.0 => /usr/lib/libm.so.0 -lpthread.0 => /usr/lib/libpthread.so.0 -lGL.1 => /usr/pkg/lib/libGL.so.1 -lstdc++.5 => /usr/lib/libstdc++.so.5 -lgcc_s.1 => /usr/lib/libgcc_s.so.1 -lGLU.1 => /usr/pkg/lib/libGLU.so.1 -lcrypt.0 => /usr/lib/libcrypt.so.0 -lutil.7 => /usr/lib/libutil.so.7 -lgauche.0 => /usr/local/lib/libgauche.so.0 -lICE.6 => /usr/pkg/xorg/lib/libICE.so.6 -lSM.6 => /usr/pkg/xorg/lib/libSM.so.6 libgauche-glut.so: -lX11.6 => /usr/pkg/xorg/lib/libX11.so.6 -lXext.6 => /usr/pkg/xorg/lib/libXext.so.6 -lm.0 => /usr/lib/libm387.so.0 -lm.0 => /usr/lib/libm.so.0 -lpthread.0 => /usr/lib/libpthread.so.0 -lGL.1 => /usr/pkg/lib/libGL.so.1 -lstdc++.5 => /usr/lib/libstdc++.so.5 -lgcc_s.1 => /usr/lib/libgcc_s.so.1 -lGLU.1 => /usr/pkg/lib/libGLU.so.1 -lICE.6 => /usr/pkg/xorg/lib/libICE.so.6 -lSM.6 => /usr/pkg/xorg/lib/libSM.so.6 -lXt.6 => /usr/pkg/xorg/lib/libXt.so.6 -lXmu.6 => /usr/pkg/xorg/lib/libXmu.so.6 -lXi.6 => /usr/pkg/xorg/lib/libXi.so.6 -lglut.3 => /usr/pkg/lib/libglut.so.3 -lcrypt.0 => /usr/lib/libcrypt.so.0 -lutil.7 => /usr/lib/libutil.so.7 -lgauche.0 => /usr/local/lib/libgauche.so.0 libgauche-math3d.so: -lcrypt.0 => /usr/lib/libcrypt.so.0 -lutil.7 => /usr/lib/libutil.so.7 -lm.0 => /usr/lib/libm387.so.0 -lm.0 => /usr/lib/libm.so.0 -lgauche.0 => /usr/local/lib/libgauche.so.0