Re: [Pharo-project] Pharo won't make a VM in linux

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-project] Pharo won't make a VM in linux

Mariano Martinez Peck
 
Javier:  I cannot help you, but I can advice you to ask this VM related questions not only in Pharo but also in the VM mailing list:

[hidden email]

as you will probably receive more help :)

Cheers

Mariano

2010/2/23 Javier Pimás <[hidden email]>
Made some tests to find out what is happening, and found the problem. I can confirm that this happens both in squeak and pharo. The thing is that B3DAccelerator doesn't work as internal plugin in unix. Making it external worked fine.

This lead me to some questions:

- To make it work as internal the only thing needed is to add that -lGL to the linking process. Does anybody know how to modify the cmake files to do that? Maybe it's just a thing of adding a line to unix/plugins/B3DAcceleratorPlugin/config.cmake or unix/vm/config.cmake??

- Does anybody build the VM in unix? using cmake?

Regards,
             Javier.


On Mon, Feb 22, 2010 at 1:07 PM, Javier Pimás <[hidden email]> wrote:
I'm cross-posting to vm-dev because I get the same errors with Squeak 3.10.2.7179 image. I have

GL_VERSION =  3.2.0 NVIDIA 190.53             

After navigating trough the makefiles, I found I was right, it's not linking to opengl. The linking command was autogenerated and sitting in blddir/CMakeFiles/squeakvm.dir/link.txt. Adding -lGL to it solved that problem. Does anybody know what caused the missing "-lGL" and how to solve it?

Now I can get back to trying to compile alien!

Regards,
           Javier.



But I don't think it's a version problem, these undefined functions are there since OpenGL 1. the

On Sun, Feb 21, 2010 at 4:27 PM, Martin McClure <[hidden email]> wrote:
Javier Pimás wrote:
>
> Linking C executable squeakvm
>
>
> B3DAcceleratorPlugin/libB3DAcceleratorPlugin.a(sqOpenGLRenderer.c.o): In
> function
> `glRenderVertexBuffer':
>
> /home/javier/st/squeak-svn/platforms/Cross/plugins/B3DAcceleratorPlugin/sqOpenGLRenderer.c:846:
> undefined reference to
> `glColorMaterial'
> /home/javier/st/squeak-svn/platforms/Cross/plugins/B3DAcceleratorPlugin/sqOpenGLRenderer.c:847:
> undefined reference to
> `glGetError'
> /home/javier/st/squeak-svn/platforms/Cross/plugins/B3DAcceleratorPlugin/sqOpenGLRenderer.c:848:
> undefined reference to
> `glEnable'
> /home/javier/st/squeak-svn/platforms/Cross/plugins/B3DAcceleratorPlugin/sqOpenGLRenderer.c:849:
> undefined reference to `glGetError'
>
> ...
>
> /home/javier/st/squeak-svn/platforms/unix/plugins/B3DAcceleratorPlugin/sqUnixOpenGL.c:159:
> undefined reference to `glLightModelfv'
> /home/javier/st/squeak-svn/platforms/unix/plugins/B3DAcceleratorPlugin/sqUnixOpenGL.c:160:
> undefined reference to `glGetError'
> collect2: ld returned 1 exit status
> make[2]: *** [squeakvm] Error 1
> make[1]: *** [CMakeFiles/squeakvm.dir/all] Error 2
> make: *** [all] Error 2
>
>
> Maybe it should be linking to opengl lib but it isn't, what do you think?

What version of OpenGL do you have installed on your machine? I haven't
looked at the details, but I believe that the interface changed quite a
lot between OpenGL 1.x and OpenGL 2.x, so if B3D is expecting 2.x and
you have 1.x, or the other way around, you might get problems like this.

Regards,

-Martin

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



--
Javier Pimás
Ciudad de Buenos Aires



--
Javier Pimás
Ciudad de Buenos Aires

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Reply | Threaded
Open this post in threaded view
|

Re: [Pharo-project] Pharo won't make a VM in linux

Adrian Lienhard

Javier,

Yes, I can build a linux VM (on OSX) from a Pharo image. I always build B3DAcceleratorPlugin as an internal plugin.

Cheers,
Adrian
 
On Feb 24, 2010, at 09:30 , Mariano Martinez Peck wrote:

> Javier:  I cannot help you, but I can advice you to ask this VM related
> questions not only in Pharo but also in the VM mailing list:
>
> [hidden email]
>
> as you will probably receive more help :)
>
> Cheers
>
> Mariano
>
> 2010/2/23 Javier Pimás <[hidden email]>
>
>> Made some tests to find out what is happening, and found the problem. I can
>> confirm that this happens both in squeak and pharo. The thing is that
>> B3DAccelerator doesn't work as internal plugin in unix. Making it external
>> worked fine.
>>
>> This lead me to some questions:
>>
>> - To make it work as internal the only thing needed is to add that -lGL to
>> the linking process. Does anybody know how to modify the cmake files to do
>> that? Maybe it's just a thing of adding a line to
>> unix/plugins/B3DAcceleratorPlugin/config.cmake or unix/vm/config.cmake??
>>
>> - Does anybody build the VM in unix? using cmake?
>>
>> Regards,
>>             Javier.
>>
>>
>> On Mon, Feb 22, 2010 at 1:07 PM, Javier Pimás <[hidden email]>wrote:
>>
>>> I'm cross-posting to vm-dev because I get the same errors with Squeak
>>> 3.10.2.7179 image. I have
>>>
>>> GL_VERSION =  3.2.0 NVIDIA 190.53
>>>
>>> After navigating trough the makefiles, I found I was right, it's not
>>> linking to opengl. The linking command was autogenerated and sitting in
>>> blddir/CMakeFiles/squeakvm.dir/link.txt. Adding -lGL to it solved that
>>> problem. Does anybody know what caused the missing "-lGL" and how to solve
>>> it?
>>>
>>> Now I can get back to trying to compile alien!
>>>
>>> Regards,
>>>           Javier.
>>>
>>>
>>>
>>> But I don't think it's a version problem, these undefined functions are
>>> there since OpenGL 1. the
>>>
>>> On Sun, Feb 21, 2010 at 4:27 PM, Martin McClure <[hidden email]>wrote:
>>>
>>>> Javier Pimás wrote:
>>>>>
>>>>> Linking C executable squeakvm
>>>>>
>>>>>
>>>>> B3DAcceleratorPlugin/libB3DAcceleratorPlugin.a(sqOpenGLRenderer.c.o):
>>>> In
>>>>> function
>>>>> `glRenderVertexBuffer':
>>>>>
>>>>>
>>>> /home/javier/st/squeak-svn/platforms/Cross/plugins/B3DAcceleratorPlugin/sqOpenGLRenderer.c:846:
>>>>> undefined reference to
>>>>> `glColorMaterial'
>>>>>
>>>> /home/javier/st/squeak-svn/platforms/Cross/plugins/B3DAcceleratorPlugin/sqOpenGLRenderer.c:847:
>>>>> undefined reference to
>>>>> `glGetError'
>>>>>
>>>> /home/javier/st/squeak-svn/platforms/Cross/plugins/B3DAcceleratorPlugin/sqOpenGLRenderer.c:848:
>>>>> undefined reference to
>>>>> `glEnable'
>>>>>
>>>> /home/javier/st/squeak-svn/platforms/Cross/plugins/B3DAcceleratorPlugin/sqOpenGLRenderer.c:849:
>>>>> undefined reference to `glGetError'
>>>>>
>>>>> ...
>>>>>
>>>>>
>>>> /home/javier/st/squeak-svn/platforms/unix/plugins/B3DAcceleratorPlugin/sqUnixOpenGL.c:159:
>>>>> undefined reference to `glLightModelfv'
>>>>>
>>>> /home/javier/st/squeak-svn/platforms/unix/plugins/B3DAcceleratorPlugin/sqUnixOpenGL.c:160:
>>>>> undefined reference to `glGetError'
>>>>> collect2: ld returned 1 exit status
>>>>> make[2]: *** [squeakvm] Error 1
>>>>> make[1]: *** [CMakeFiles/squeakvm.dir/all] Error 2
>>>>> make: *** [all] Error 2
>>>>>
>>>>>
>>>>> Maybe it should be linking to opengl lib but it isn't, what do you
>>>> think?
>>>>
>>>> What version of OpenGL do you have installed on your machine? I haven't
>>>> looked at the details, but I believe that the interface changed quite a
>>>> lot between OpenGL 1.x and OpenGL 2.x, so if B3D is expecting 2.x and
>>>> you have 1.x, or the other way around, you might get problems like this.
>>>>
>>>> Regards,
>>>>
>>>> -Martin
>>>>
>>>> _______________________________________________
>>>> Pharo-project mailing list
>>>> [hidden email]
>>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>>
>>>
>>>
>>>
>>> --
>>> Javier Pimás
>>> Ciudad de Buenos Aires
>>>
>>
>>
>>
>> --
>> Javier Pimás
>> Ciudad de Buenos Aires
>>
>> _______________________________________________
>> Pharo-project mailing list
>> [hidden email]
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>