[squeak-dev] Re: Still a bug with OpenGL ? Was {Re: Re: OpenGL in
4.1 or later?]
Bert Freudenberg
bert at freudenbergs.de
Mon Dec 19 11:50:10 UTC 2011
On 19.12.2011, at 11:25, Andreas Raab wrote:
> On 12/19/2011 10:08, Alexander Lazarević wrote:
>> Just tested this in an up to date image and it worked. As always I had
>> to manually adapt the library path, but that was all.
>
> Which, according to http://www.opengl.org/registry/ABI/ should not be necessary:
>
> 3.1. There are two link-level libraries. libGL includes the OpenGL and GLX entry points and in general depends on underlying hardware and/or X server dependent code that may or may not be incorporated into this library. libGLU includes the GLU utility routines and should be hardware independent, using only the OpenGL API.
>
> Each library has two names: the link name used on the ld command line, and the DT_SONAME within that library (specified by the -soname switch when linking the library), defining where it's looked up at runtime. Both forms must exist so that both linking and running will operate properly. The library names are:
> Link name Runtime name (DT_SONAME)
> libGL.so libGL.so.1
> libGLU.so libGLU.so.1
>
> libGL.so and libGLU.so should be symbolic links pointing to the runtime names, so that future versions of the standard can be implemented transparently to applications by changing the link.
>
> 3.2. These libraries must be located in /usr/lib. The X-specific library direction (/usr/lib/X11) was also considered, but existing practice on Linux and other platforms indicates that /usr/lib is preferable.
>
> Cheers,
> - Andreas
So the name that must be used for FFI under linux would be 'libGL.so.1'. Maybe this would make it work in general:
openGLLibraryName
^ Smalltalk os osVersion = 'linux'
ifTrue: ['libGL.so.1']
ifFalse: ['GL']
- Bert -
>>
>> Alex
>>
>> 2011/12/17 Lawson English<lenglish5 at cox.net>:
>>> Has anyone tested this with 4.3?
>>>
>>> It still doesn't work out of the box with 4.2 all-in-one, which means I
>>> can't do a "look how easy it is to do this in 3D" tutorial yet.
>>>
>>> L.
>>>
>>> On 9/11/11 6:09 PM, Lawson English wrote:
>>>>
>>>> On a Mac, download the latest 4.2 all-in-one squeak.
>>>>
>>>> Put the following into a workspace and "do it".
>>>>
>>>> I get Error: External function failed. The offending method is
>>>> #beginFrame.
>>>>
>>>> I'm using an Intel Mac, Mac OS X 10.6.8.
>>>> Doing the same code with Cog doesn't seem to show the errors.
>>>>
>>>> L
>>>>
>>>> (Installer repository: 'http://source.squeak.org/FFI')
>>>> install: 'FFI-Pools';
>>>> install: 'FFI-Kernel';
>>>> install: 'FFI-Tests'.
>>>>
>>>> (Installer repository: 'http://www.squeaksource.com/CroquetGL')
>>>> install: '3DTransform';
>>>> install: 'OpenGL-Pools';
>>>> install: 'OpenGL-Core'.
>>>>
>>>> OpenGL example.
>>>>
>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>>
>>>
>
>
More information about the Squeak-dev
mailing list
|