Re: Porting the Stage project on Qt 4.8.3
Rich Mattes <[email protected]>
| Newsgroups | gmane.science.robotics.playerstage |
|---|---|
| Message-ID | <[email protected]> |
On 11/30/2012 01:20 PM, giorgik wrote:
> I downloaded the project from GitHub StageMaster (Stage-master.zip) CMake 2.8
> I used to create the Makefile for the compiler MinGW 4.6.2. When I started
> the make, I got qesti error messages:
> C:\MinGW\Stage-master\compilato>make -j8
> [ 2%] Building CXX object libstage/CMakeFiles/stage.dir/blockgroup.obj
> C:\MinGW\Stage-master\libstage\blockgroup.cc: In member function 'void
> Stg::BlockGroup::BuildDisplayList()':
> C:\MinGW\Stage-master\libstage\blockgroup.cc:185:39: error: invalid
> conversion from 'GLvoid (*)() {aka void (*)()}' to '
> _GLUfuncptr {aka void (*)()}' [-fpermissive]
> c:\mingw\bin\../lib/gcc/mingw32/4.6.2/../../../../include/GL/glu.h:270:21:
> error: initializing argument 3 of 'void glu
> TessCallback(GLUtesselator*, GLenum, _GLUfuncptr)' [-fpermissive]
> C:\MinGW\Stage-master\libstage\blockgroup.cc:187:38: error: invalid
> conversion from 'GLvoid (*)() {aka void (*)()}' to '
> _GLUfuncptr {aka void (*)()}' [-fpermissive]
> c:\mingw\bin\../lib/gcc/mingw32/4.6.2/../../../../include/GL/glu.h:270:21:
> error: initializing argument 3 of 'void glu
> TessCallback(GLUtesselator*, GLenum, _GLUfuncptr)' [-fpermissive]
> C:\MinGW\Stage-master\libstage\blockgroup.cc:189:35: error: invalid
> conversion from 'GLvoid (*)() {aka void (*)()}' to '
> _GLUfuncptr {aka void (*)()}' [-fpermissive]
> c:\mingw\bin\../lib/gcc/mingw32/4.6.2/../../../../include/GL/glu.h:270:21:
> error: initializing argument 3 of 'void glu
> TessCallback(GLUtesselator*, GLenum, _GLUfuncptr)' [-fpermissive]
> C:\MinGW\Stage-master\libstage\blockgroup.cc:191:33: error: invalid
> conversion from 'GLvoid (*)() {aka void (*)()}' to '
> _GLUfuncptr {aka void (*)()}' [-fpermissive]
> c:\mingw\bin\../lib/gcc/mingw32/4.6.2/../../../../include/GL/glu.h:270:21:
> error: initializing argument 3 of 'void glu
> TessCallback(GLUtesselator*, GLenum, _GLUfuncptr)' [-fpermissive]
> C:\MinGW\Stage-master\libstage\blockgroup.cc:195:41: error: invalid
> conversion from 'GLvoid (*)() {aka void (*)()}' to '
> _GLUfuncptr {aka void (*)()}' [-fpermissive]
> c:\mingw\bin\../lib/gcc/mingw32/4.6.2/../../../../include/GL/glu.h:270:21:
> error: initializing argument 3 of 'void glu
> TessCallback(GLUtesselator*, GLenum, _GLUfuncptr)' [-fpermissive]
> C:\MinGW\Stage-master\libstage\blockgroup.cc:197:43: error: invalid
> conversion from 'GLvoid (*)() {aka void (*)()}' to '
> _GLUfuncptr {aka void (*)()}' [-fpermissive]
> c:\mingw\bin\../lib/gcc/mingw32/4.6.2/../../../../include/GL/glu.h:270:21:
> error: initializing argument 3 of 'void glu
> TessCallback(GLUtesselator*, GLenum, _GLUfuncptr)' [-fpermissive]
> mingw32-make[2]: *** [libstage/CMakeFiles/stage.dir/blockgroup.obj] Error 1
> mingw32-make[1]: *** [libstage/CMakeFiles/stage.dir/all] Error 2
> mingw32-make: *** [all] Error 2
>
> Can you help me solve this problem ?
>
> I would love to have the executable for Windows XP and I can not get there.
> I noticed that there are some corrections to the file stage.hh, must be
> added (drand48, srand48, random):
>
> #define drand48() double( rand() ) / double( RAND_MAX )
> #define srand48( seed ) srand( seed )
> #define random() rand()
It looks like your compiler is choking on some GL API stuff, a quick
google search turned up
http://sourceforge.net/tracker/?func=detail&atid=102435&aid=742008&group_id=2435.
The compiler seems to be telling you that you can overlook these errors
by adding the -fpermissive cflag, so I would start with that and see if
things get any further along.
Stage hasn't ever been ported to Windows, so the breakages you're seeing
are to be expected. I'm sure that the Stage guys would be happy to
accept patches that allow Stage to be built on Windows in addition to
Linux/OS X.
Rich
------------------------------------------------------------------------------
Keep yourself connected to Go Parallel:
DESIGN Expert tips on starting your parallel project right.
http://goparallel.sourceforge.net/