The defaultExternalPlugins method used by CogUnixNoGLConfig is the one in CogUnixConfig:<br><br>defaultExternalPlugins<br> ^ #(<br> B3DAcceleratorPlugin<br> ThreadedIA32FFIPlugin "SqueakFFIPrims"<br>
"UUIDPlugin"<br> "UnixOSProcessPlugin ?? " <br> )<br><br>Mariano, yo mean removing the B3DAcceleratorPlugin from the defaults? And let the method stay like:<br><br>defaultExternalPlugins<br>
^ #(<br>
ThreadedIA32FFIPlugin<br>
)<br><br>I tried that and It worked :)<br><br><div class="gmail_quote">On Fri, Jan 13, 2012 at 6:14 AM, Mariano Martinez Peck <span dir="ltr"><<a href="mailto:marianopeck@gmail.com">marianopeck@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> <br><br><br><div class="gmail_quote">On Fri, Jan 13, 2012 at 1:56 AM, Igor Stasenko <span dir="ltr"><<a href="mailto:siguctua@gmail.com" target="_blank">siguctua@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
On 12 January 2012 22:44, Guillermo Polito <<a href="mailto:guillermopolito@gmail.com" target="_blank">guillermopolito@gmail.com</a>> wrote:<br>
><br>
> Compiling with CogUnixConfig works... are the class names ok? Or Maybe the No in the NoGL means something different, hehe.<br>
><br>
<br>
because this config was focused more on building VM binary without<br>
linkage to OpenGL libs,<br>
so you can start VM without GL libs installed in your system.<br>
And B3DAcceleratorPlugin is built as external module, and there is no<br>
restrictions on it.<br>
<br>
To avoid building it, you need to just exclude it from build, like:<br>
<br>
| conf |<br>
conf := CogUnixNoGLConfig new.<br>
conf externalPlugins: (conf externalPlugins copyWithout:<br>
#B3DAcceleratorPlugin ).<br>
conf generateSources;generate<br></blockquote><div><br><br>This doesn't look good. The last time I tried this conf (time ago) it was working out of the box. If you have to explicitly put B3DAcceleratorPlugin as external, it starts to make less sense.<br>
Guille: if you can change CogUnixNoGLConfig so that it puts B3DAcceleratorPlugin as external by default, and does what Igor mentions next..it would be nice!<br>And please, if you do, update class comments ;)<br> </div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
but there are some other things needs to be updated, like<br>
#addDriver: sources:generator: method which now don't needs to be<br>
overridden in subclass,<br>
because it can only change #linkFlags<br>
<br></blockquote><div><br>Ok<br> </div><blockquote class="gmail_quote" style="margin:0pt 0pt 0pt 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
> Thanks,<br>
> Guille<br>
<div><div>><br>
> On Thu, Jan 12, 2012 at 6:37 PM, Guillermo Polito <<a href="mailto:guillermopolito@gmail.com" target="_blank">guillermopolito@gmail.com</a>> wrote:<br>
>><br>
>> BTW, what more annoys me is that I generated the sources with CogUnixNoGLConfig, hehe<br>
>><br>
>> Guille<br>
>><br>
>><br>
>> On Thu, Jan 12, 2012 at 6:25 PM, Guillermo Polito <<a href="mailto:guillermopolito@gmail.com" target="_blank">guillermopolito@gmail.com</a>> wrote:<br>
>>><br>
>>> When I compile the last version of the Vm in my 32bit ubuntu, I get the following:<br>
>>><br>
>>> In file included from /home/guille/Dev/Pharo/cogvm/coglinux/blessed/platforms/Cross/plugins/B3DAcceleratorPlugin/sqOpenGLRenderer.c:30:0:<br>
>>> /home/guille/Dev/Pharo/cogvm/coglinux/blessed/platforms/Cross/plugins/B3DAcceleratorPlugin/sqOpenGLRenderer.h:13:16: error: redefinition of ‘struct glRenderer’<br>
>>> /home/guille/Dev/Pharo/cogvm/coglinux/blessed/platforms/unix/plugins/B3DAcceleratorPlugin/sqUnixOpenGL.h:6:16: note: originally defined here<br>
>>><br>
>>><br>
>>> Diving into the code, I found that in sqUnixOpenGL.h there is code like:<br>
>>><br>
>>> ...<br>
>>><br>
>>> typedef struct glRenderer<br>
>>> {<br>
>>> int bufferRect[4];<br>
>>> int viewport[4];<br>
>>> int used;<br>
>>> void *drawable;<br>
>>> void *context;<br>
>>> } glRenderer;<br>
>>><br>
>>> #if defined(USE_X11_GLX) || defined (USE_QUARTZ_CGL)<br>
>>><br>
>>> # define GL_RENDERER_DEFINED 1<br>
>>> # define MAX_RENDERER 16<br>
>>><br>
>>> # if defined(HAVE_GL_GL_H)<br>
>>> # include <GL/gl.h><br>
>>> # else<br>
>>> # if defined(HAVE_OPENGL_GL_H)<br>
>>> # include <OpenGL/gl.h><br>
>>> # else<br>
>>> # error *** cannot find gl.h<br>
>>> # endif<br>
>>> # endif<br>
>>><br>
>>> #endif<br>
>>><br>
>>> ...<br>
>>><br>
>>> Shouldn't the typedef be written inside the #if and #endif?<br>
>>> If so, how do I publish the fix?<br>
>>><br>
>>> Cheers,<br>
>>> Guille<br>
>><br>
>><br>
><br>
><br>
<br>
<br>
<br>
</div></div><span><font color="#888888">--<br>
Best regards,<br>
Igor Stasenko.<br>
</font></span></blockquote></div><br><br clear="all"><br>-- <br>Mariano<br><a href="http://marianopeck.wordpress.com" target="_blank">http://marianopeck.wordpress.com</a><br><br>
<br></blockquote></div><br>