octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: gl-render.cc: framework OpenGL on MacOSX


From: Shai Ayal
Subject: Re: gl-render.cc: framework OpenGL on MacOSX
Date: Sat, 31 Jan 2009 08:06:12 +0200

On Sat, Jan 31, 2009 at 1:09 AM, Thomas Treichl <address@hidden> wrote:
> Hi,
>
> I'm currently trying to compile gl-render.cc against Mac's OpenGL framework.
> If I compile against Mac's "X11/GL" then everything is just fine, but with
> "framework OpenGL" I have got problems. I already was able to do a hack for
> this:
>
> gl-render.cc: In member function 'virtual void opengl_renderer::draw(const
> axes::properties&)':
> gl-render.cc:595: error: invalid conversion from 'int*' to 'GLint*'
> gl-render.cc:595: error:   initializing argument 2 of 'void
> glGetIntegerv(GLenum, GLint*)'
> gl-render.cc: In member function 'virtual void
> opengl_renderer::init_marker(const std::string&, double, float)':
> gl-render.cc:2634: error: invalid conversion from 'int*' to 'GLint*'
> gl-render.cc:2634: error:   initializing argument 2 of 'void
> glGetIntegerv(GLenum, GLint*)'
>
> but I'm not able to find out what the compiler wants from me for this:
>
> gl-render.cc: In member function 'virtual void opengl_tesselator::init()':
> gl-render.cc:273: error: invalid conversion from 'void (*)()' to 'GLvoid
> (*)(...)'
> gl-render.cc:273: error:   initializing argument 3 of 'void
> gluTessCallback(GLUtesselator*, GLenum, GLvoid (*)(...))'
> gl-render.cc:275: error: invalid conversion from 'void (*)()' to 'GLvoid
> (*)(...)'
> gl-render.cc:275: error:   initializing argument 3 of 'void
> gluTessCallback(GLUtesselator*, GLenum, GLvoid (*)(...))'
> gl-render.cc:277: error: invalid conversion from 'void (*)()' to 'GLvoid
> (*)(...)'
> gl-render.cc:277: error:   initializing argument 3 of 'void
> gluTessCallback(GLUtesselator*, GLenum, GLvoid (*)(...))'
> gl-render.cc:279: error: invalid conversion from 'void (*)()' to 'GLvoid
> (*)(...)'
> gl-render.cc:279: error:   initializing argument 3 of 'void
> gluTessCallback(GLUtesselator*, GLenum, GLvoid (*)(...))'
> gl-render.cc:281: error: invalid conversion from 'void (*)()' to 'GLvoid
> (*)(...)'
> gl-render.cc:281: error:   initializing argument 3 of 'void
> gluTessCallback(GLUtesselator*, GLenum, GLvoid (*)(...))'
> gl-render.cc:283: error: invalid conversion from 'void (*)()' to 'GLvoid
> (*)(...)'
> gl-render.cc:283: error:   initializing argument 3 of 'void
> gluTessCallback(GLUtesselator*, GLenum, GLvoid (*)(...))'
>

The type for the gluTessCallback was always problematic. In fact in
octplot I dedicated a whole h file just for gettign it right. Have a
look for what used to work for octplot:
http://octplot.svn.sourceforge.net/viewvc/octplot/trunk/octplot/src/glutesscb.h?revision=437&view=markup


> The second question is: Are there any other platforms that have a header
> "OpenGL/gl.h" instead of "GL/gl.h" or do we just have this "OpenGL/gl.h" on
> Mac? I'm asking this question because I'd like to adjust the test procedure
> OCTAVE_OPENGL in aclocal.m4.

Why don't you implement a test for the feature, not version -- i.e. if
"GL/gl.h" is not found, try "OpenGL/gl.h" ?

Shai


reply via email to

[Prev in Thread] Current Thread [Next in Thread]