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: Ben Abbott
Subject: Re: gl-render.cc: framework OpenGL on MacOSX
Date: Tue, 10 Feb 2009 19:28:34 -0500


On Feb 10, 2009, at 3:19 PM, Jonathan Stickel wrote:

Ben Abbott wrote:
On Feb 10, 2009, at 1:59 PM, Jonathan Stickel <address@hidden> wrote:
On 2/10/09 address@hidden wrote:
Date: Tue, 10 Feb 2009 18:04:11 +0200
From: Shai Ayal <address@hidden>
Subject: Re: gl-render.cc: framework OpenGL on MacOSX
To: Ben Abbott <address@hidden>
Cc: octave maintainers mailing list <address@hidden>
Message-ID:
  <address@hidden>
Content-Type: text/plain; charset=ISO-8859-1
On Tue, Feb 10, 2009 at 5:21 PM, Ben Abbott <address@hidden> wrote:
>
> On Feb 9, 2009, at 1:15 PM, Thomas Treichl wrote:
>
>> Ben Abbott schrieb:
>>>
>>> The result of configure is below.
>>
>> Ok, let me know if your next compilation also is successful (at least the >> file src/gl-render.cc). I is compiled without the three-dots- call of
>> gluTessCallback on your Mac.
>>
>>  Thomas
>
> With the liboctave fix, I'm now able to build octave again and the fltk
> backend actually functions for me!
<snip>
It looks like I am also seeing this issue of compiling gl- render.cc on Mac. Has the fix propogated to the primary octave development branch?

Jonathan
Yes

Hmm, OK, but I am getting this error:


g++ -c -I/opt/local/include -fPIC -I. -I../../src -I.. -I../ liboctave -I../src -I../libcruft/misc -I../.. -I../../liboctave - I../../src -I../../libcruft/misc -DHAVE_CONFIG_H -mieee-fp -I/opt/ local/include/freetype2 -I/opt/local/include -Wall -W -Wshadow -Wold- style-cast -I/usr/local/include -I/opt/local/include ../../src/ graphics.cc -o pic/graphics.o ../../src/gl-render.cc: In member function ‘virtual void opengl_tesselator::init()’: ../../src/gl-render.cc:273: error: invalid conversion from ‘void (*) ()’ to ‘GLvoid (*)(...)’ ../../src/gl-render.cc:273: error: initializing argument 3 of ‘void gluTessCallback(GLUtesselator*, GLenum, GLvoid (*)(...))’ ../../src/gl-render.cc:275: error: invalid conversion from ‘void (*) ()’ to ‘GLvoid (*)(...)’ ../../src/gl-render.cc:275: error: initializing argument 3 of ‘void gluTessCallback(GLUtesselator*, GLenum, GLvoid (*)(...))’ ../../src/gl-render.cc:277: error: invalid conversion from ‘void (*) ()’ to ‘GLvoid (*)(...)’ ../../src/gl-render.cc:277: error: initializing argument 3 of ‘void gluTessCallback(GLUtesselator*, GLenum, GLvoid (*)(...))’ ../../src/gl-render.cc:279: error: invalid conversion from ‘void (*) ()’ to ‘GLvoid (*)(...)’ ../../src/gl-render.cc:279: error: initializing argument 3 of ‘void gluTessCallback(GLUtesselator*, GLenum, GLvoid (*)(...))’ ../../src/gl-render.cc:281: error: invalid conversion from ‘void (*) ()’ to ‘GLvoid (*)(...)’ ../../src/gl-render.cc:281: error: initializing argument 3 of ‘void gluTessCallback(GLUtesselator*, GLenum, GLvoid (*)(...))’ ../../src/gl-render.cc:283: error: invalid conversion from ‘void (*) ()’ to ‘GLvoid (*)(...)’ ../../src/gl-render.cc:283: error: initializing argument 3 of ‘void gluTessCallback(GLUtesselator*, GLenum, GLvoid (*)(...))’ ../../src/gl-render.cc: In member function ‘virtual void opengl_renderer::draw(const axes::properties&)’: ../../src/gl-render.cc:595: error: invalid conversion from ‘int*’ to ‘GLint*’ ../../src/gl-render.cc:595: error: initializing argument 2 of ‘void glGetIntegerv(GLenum, GLint*)’ ../../src/gl-render.cc: In member function ‘virtual void opengl_renderer::init_marker(const std::string&, double, float)’: ../../src/gl-render.cc:2677: error: invalid conversion from ‘int*’ to ‘GLint*’ ../../src/gl-render.cc:2677: error: initializing argument 2 of ‘void glGetIntegerv(GLenum, GLint*)’
make[2]: *** [pic/gl-render.o] Error 1

I've started a fresh build and am now past liboctave and libcruft.

I can think two things that may be different (besides that I'm running 10.5.6).

(1) I'm using Thomas' macro to make sure the OpenGL stuff is found.

http://www-old.cae.wisc.edu/pipermail/octave-maintainers/2009-February/010703.html

If you're not using it, give it a try. If you are, make sure you're not passing some OpenGL specifics to configure.

When running configure I pass the following options ...

./configure --prefix=/sw FLIBS=/sw/lib/gcc4.3/lib/libgfortran.dylib F77=/sw/bin/gfortran --infodir='${prefix}/share/info' --mandir='$ {prefix}/share/man' --libexecdir='${prefix}/lib' -enable-shared - enable-dl --disable-static --without-mpi --with-hdf5 --with-fftw CPPFLAGS="-g -I/sw/include -I/sw/include/freetype2" FFLAGS="-g -ff2c" LDFLAGS="-L/sw/lib/fltk-aqua/lib -L/sw/lib -lfltk_gl -lfltk -lpthread" $blas

where $blas points to vecLib and is defined as

blas='--with-lapack=-Wl,-framework,Accelerate,-dylib_file,/System/ Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/ vecLib.framework/Versions/A/libLAPACK.dylib:/System/Library/Frameworks/ Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/ libLAPACK.dylib --with-blas=-Wl,-framework,Accelerate,-dylib_file,/ System/Library/Frameworks/Accelerate.framework/Versions/A/Frameworks/ vecLib.framework/Versions/A/libBLAS.dylib:/System/Library/Frameworks/ Accelerate.framework/Versions/A/Frameworks/vecLib.framework/Versions/A/ libBLAS.dylib'

Also notice I've setup things to work with the Fink package manager.

(2) I've also modified the tests for FTGL in configure.in

 707 #ifdef HAVE_FTGL_FTGL_H
 708 #ifdef HAVE_FTGL_UPPERCASE
 709 #include <FTGL/FTGL.h>
 710 #include <FTGL/FTGLTextureFont.h>
 711 #else
 712 #include <FTGL/ftgl.h>
 713 #include <FTGL/FTGLTextureFont.h>
 714 #endif
 715 #elif HAVE_FTGL_H
 716 #ifdef HAVE_FTGL_UPPERCASE
 717 #include <FTGL.h>
 718 #include <FTGLTextureFont.h>
 719 #else
 720 #include <ftgl.h>
 721 #include <FTGLTextureFont.h>
 722 #endif
 723 #endif], [

Ben




reply via email to

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