Unix B3D Acceleration
Joshua 'Schwa' Gargus
schwa at cc.gatech.edu
Fri Jun 28 20:59:47 UTC 2002
Hi,
I have been unable to build a VM with working B3D acceleration from
either SourceForge or Ian's sources.
With the SF sources, I wasn't able to build a VM at all. There were a
ton of warnings about control reaching the end of a non-void function.
The errors that stopped the build process were
B3DAcceleratorPlugin/sqUnixOpenGL.lo: In function `glGetIntProperty':
/home/schwa/squeakvm/build/../platforms/unix/misc/../../../platforms/unix/plugins/B3DAcceleratorPlugin/sqUnixOpenGL.c:330: multiple definition of `glGetIntProperty'
B3DAcceleratorPlugin/sqOpenGLRenderer.lo:/home/schwa/squeakvm/build/../platforms/unix/misc/../../../platforms/Cross/plugins/B3DAcceleratorPlugin/sqOpenGLRenderer.c:654: first defined here
/usr/bin/ld: Warning: size of symbol `glGetIntProperty' changed from 909 to 547 in B3DAcceleratorPlugin/sqUnixOpenGL.lo
B3DAcceleratorPlugin/sqUnixOpenGL.lo: In function `glSetIntProperty':
/home/schwa/squeakvm/build/../platforms/unix/misc/../../../platforms/unix/plugins/B3DAcceleratorPlugin/sqUnixOpenGL.c:361: multiple definition of `glSetIntProperty'
B3DAcceleratorPlugin/sqOpenGLRenderer.lo:/home/schwa/squeakvm/build/../platforms/unix/misc/../../../platforms/Cross/plugins/B3DAcceleratorPlugin/sqOpenGLRenderer.c:709: first defined here
/usr/bin/ld: Warning: size of symbol `glSetIntProperty' changed from 1134 to 753 in B3DAcceleratorPlugin/sqUnixOpenGL.lo
collect2: ld returned 1 exit status
make: *** [B3DAcceleratorPlugin.la] Error 1
Giving up on that, I downloaded Ian's sources and gave them a try. I
tried both using his tree as-is, and with a src/ directory generated
by VMMaker. With VMMaker, I tried to build B3DAcceleratorPlugin as
both an internal and an external plugin. In all 3 cases, the result
was a working VM without B3D hardware acceleration.
The problem is the failure of the line
p= interpreterProxy->ioLoadFunctionFrom("stDisplay", NULL);
in sqUnixOpenGL.c
One confusing thing is that stDisplay doesn't seem to be a function.
Is some initialization function supposed to stash stDisplay (the one
from sqXWindow.c) in a primitive table so that the accelerator plugin
can find it? If so, this isn't happening.
Help!
Joshua
More information about the Squeak-dev
mailing list
|