I got further now. By ignoring render.c, libnviz compiles.
Now I'm in wxpython/nviz. I see that there is still the nviz header
include order problem here. In wxpython nviz.h, the order should be:
extern "C" {
#include <grass/gis.h>
#include <grass/nviz.h>
#include <grass/gsurf.h>
#include <grass/gstypes.h>
}
And I see one in nviz.i:
%{
#include "nviz.h"
#include <grass/gsurf.h>
#include <grass/gstypes.h>
%}
Now I get an error in the swig wrapper:
c++ -I/Users/Shared/src/GRASS/svn/trunk/dist.i386-apple-darwin9.3.0/
include -Os -fno-common -I/Library/Frameworks/GDAL.framework/
Versions/1.5/Headers -I/System/Library/Frameworks/Python.framework/
Versions/2.5/include/python2.5 -I/System/Library/Frameworks/
Python.framework/Versions/2.5/include/python2.5 -fno-strict-aliasing -
Wno-long-double -no-cpp-precomp -mno-fused-madd -fno-common -dynamic -
DNDEBUG -g -Os -Wall -Wstrict-prototypes -DMACOSX -I/usr/include/ffi -
DENABLE_DTRACE -I/usr/lib/wx/include/mac-unicode-debug-2.8 -I/usr/
include/wx-2.8 -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -D__WXDEBUG__ -
D__WXMAC__ -DPACKAGE=\""grasslibs"\" -I/Users/Shared/src/GRASS/
svn/trunk/dist.i386-apple-darwin9.3.0/include -o OBJ.i386-apple-
darwin9.3.0/grass7_wxnviz_wrap.o -c grass7_wxnviz_wrap.cpp
cc1plus: warning: command line option "-Wstrict-prototypes" is valid
for C/ObjC but not for C++
/usr/include/wx-2.8/wx/mac/carbon/glcanvas.h:49: warning:
‘AGLDrawable’ is deprecated (declared at /System/Library/Frameworks/
AGL.framework/Headers/agl.h:61)
/usr/include/wx-2.8/wx/mac/carbon/glcanvas.h:53: warning:
‘AGLDrawable’ is deprecated (declared at /System/Library/Frameworks/
AGL.framework/Headers/agl.h:61)
grass7_wxnviz_wrap.cpp:3165: error: expected unqualified-id before ‘{’
token
grass7_wxnviz_wrap.cpp:3173: error: expected unqualified-id before ‘{’
token
grass7_wxnviz_wrap.cpp:3180: error: expected unqualified-id before ‘{’
token
grass7_wxnviz_wrap.cpp:3241: error: expected unqualified-id before ‘{’
token
grass7_wxnviz_wrap.cpp:3781: error: expected unqualified-id before ‘{’
token
grass7_wxnviz_wrap.cpp: In static member function ‘static int
swig::traits_asptr_stdseq<Seq, T>::asptr(PyObject*, Seq**)’:
grass7_wxnviz_wrap.cpp:3889: error: expected unqualified-id before ‘?’
token
make: *** [OBJ.i386-apple-darwin9.3.0/grass7_wxnviz_wrap.o] Error 1
The relevant lines (first case):
template <class Type>
struct traits_check<Type, value_category> {
static bool check(PyObject *obj) {
int res = obj ? asval(obj, (Type *)(0)) : SWIG_ERROR;
return SWIG_IsOK(res) ? true : false;
}
};
It's the check(PyObject) line. All the other errors are also on
check(PyObject) lines (except that last one), which is:
return pyseq.check() ? SWIG_OK : SWIG_ERROR;
I'm using the SWIG included in OSX Xcode 3.1: v1.3.31.
On Jul 16, 2008, at 8:33 AM, William Kyngesburye wrote:
On Jul 16, 2008, at 2:45 AM, Glynn Clements wrote:
According to:
http://developer.apple.com/documentation/GraphicsImaging/Reference/AGL_OpenGL/Reference/reference.html
it should be AGLPixelFormat (without the "ID" suffix).
And that's exactly what togl.c uses.
That works, but now it chokes on AGLPixmap...
Also, I note that aglCreateAGLPixmap isn't mentioned on that page.
However, it does describe aglCreatePBuffer, which is probably the
appropriate function to use (similarly, the X11 implementation should
probably use pBuffers if they are available).
... so I wonder if "AGLPixmap windowId;" should also be changed to
"AGLPbuffer windowId;"?
Doing that works. But I imagine that the rest of the nviz library
must be changed to use AGLPbuffers.
I didn't get errors elsewhere about missing AGL pixmap functions. I
only see those in render.c, which I disabled to be able to compile
libnviz.
-----
William Kyngesburye <kyngchaos*at*kyngchaos*dot*com>
http://www.kyngchaos.com/
"Time is an illusion - lunchtime doubly so."
- Ford Prefect
_______________________________________________
grass-dev mailing list
grass-dev@lists.osgeo.org
http://lists.osgeo.org/mailman/listinfo/grass-dev