mutoh_20080211

  • 2008年02月11日(月)

FreeBSD 3.9-7 VMの現状

Croquetを実行する。

fuji% CroquetSDK-1.0.18/
fuji% squeak Croquet.1.0.18.image 

Croquet(Master)などをワールドにdrag & drop。

Squeakの世界では、以下のようなdebug dialogがあがる。

  • Error: Cannot initialize OpenGL.

ちなみに、端末側では以下のようなエラーがでている。

fuji% squeak Croquet.1.0.18.image 
X error
X error
X error
X error

実際に問題があるのは、CroquetHarness>>bounds:のエラーを出している一つ前の行のOpenGL>>newIn:でOpenGLが初期化されずにnilを返していること。

ブラウザで、OpenGLを順番に調べていくと、最終的にはOpenGL>>primCreateRenderer:x:y:w:h:の以下のプリミティブに失敗していることが分かる。

<primitive: 'primitiveCreateRendererFlags' module: 'B3DAcceleratorPlugin'>

ここから先はVMの世界を調べる。 このプラグイン自体は見ての通り、B3DAcceleratorPluginで、ソースは以下の場所にある。

  • Squeak-3.9-7/platforms/unix/plugins/B3DAcceleratorPlugin/

実際にOpenGLを叩いているのは、以下のあたり。

  • Squeak-3.9-7/platforms/unix/vm-display-X11/sqUnixOpenGL.X11

Fonc

山宮さんの以下のページでFonc遊びの解説があったので、ちょっと試してみようかなと思った。

fuji% svn co http://piumarta.com/svn2/idst/trunk/ idst
  (snip)
fuji% cd idst 
fuji% gmake
  (snip)
fuji% cd function/examples/peg
fuji% ../../jolt-burg/main boot.k peg.k -o calc.peg.k examples/calc.peg
zsh: segmentation fault (core dumped)  ../../jolt-burg/main boot.k peg.k -o calc.peg.k examples/calc.peg

ありゃ?

fuji% cd ../../../function/jolt-burg
fuji% LANG=C gmake test
/bin/sh -ec 'cd ../objects;  gmake'
gmake[1]: Entering directory `/usr/home/mutoh/work/idst/function/objects'
gmake[1]: Nothing to be done for `all'.
gmake[1]: Leaving directory `/usr/home/mutoh/work/idst/function/objects'
rm -f CodeGenerator-local.st
cp -p CodeGenerator-i386.st CodeGenerator-local.st
./main boot.k sanaras.k
gmake: *** [test] Segmentation fault: 11 (core dumped)

うーん。

fuji% gdb ./main
GNU gdb 6.1.1 [FreeBSD]
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "i386-marcel-freebsd"...
(gdb) run  boot.k sanaras.k
Starting program: /usr/home/mutoh/work/idst/function/jolt-burg/main boot.k sanaras.k

Program received signal SIGSEGV, Segmentation fault.
0x00000000 in ?? ()
(gdb) where
 #0  0x00000000 in ?? ()
 #1  0x88309147 in ?? ()
 #2  0x8830c040 in ?? ()
 #3  0x8830b070 in ?? ()
 #4  0x00000000 in ?? ()
 #5  0x0824fbd4 in ?? ()
 #6  0x0822ff60 in ?? ()
 #7  0x88309100 in ?? ()
 #8  0xbfbfe998 in ?? ()
 #9  0x8830d05f in ?? ()
 #10 0xfffffffe in ?? ()
 #11 0x8830b070 in ?? ()
 #12 0xbfbfe9a8 in ?? ()
 #13 0x08060984 in CompilerOptions__verboseExec (v__closure=0xfffffffe, 
    v_stateful_self=0x8830b070, v_self=0xbfbfe9a8) at CompilerOptions.o.c:423
Previous frame inner to this frame (corrupt stack?)
Last modified: 2008-02-11
Post-it: New Post-it (help)

Text color: [_][_][_][_]

Background: [_][_][_][_][_][_]

Draw Line:

x: y: