Hello,
This sounds like the freeglut problem we were having a discussion about a
month or two ago. So for you I'm pretty sure that you should have
GLUT_FLAG = -DNEED_GLUT_INIT
and GL_FLAG should probably be whatever you used to have. So to check
what is going on (we don't have freeglut here so not easy for us to check)
the first thing we should try is to make sure it is actually calling the
glutInit() routine. So in ccpnmr1.0/c/memops/global/gl_handler.c find the
line which calls glutInit and put a
printf("about to call glutInit\n"); /* temporary line */
above it and then do a "make" (in ccpnmr1.0/c, so that all directories get
re-compiled and re-linked correctly). Now if that message appears on the
screen when you run the program then the problem is probably that the
glutInit isn't happy being called in the new_gl_handler() (although I
thought we had checked before it was). (And morally, this is where it
belongs.) So the alternative is to put it in draw_text_gl_handler().
You would need to add there, after the line
static void *font = GLUT_BITMAP_HELVETICA_10;
the following code:
#ifdef NEED_GLUT_INIT
static Bool first_pass = CCPN_TRUE;
printf("about to call glutInit\n"); /* temporary line */
if (first_pass)
{
first_pass = CCPN_FALSE;
glutInit(&argc, &argv);
}
#endif
and comment out the other glutInit call.
If that works then we'll have to go back to that alternative in the next
release (although I think it's dreadful).
Wayne
On Mon, 17 Oct 2005, Cameron Mackenzie wrote:
> On the latest release, I can't get OpenGL working. Analysis crashes out with
> a X BadMatch error from a X_GLXMakeCurrent command.
>
> I'm using ATI fglrx 8.16.20 for rendering and freeglut 2.2.0-82.
>
> Have tried compiling with all combinations of "GL_FLAG =" and "GLUT_FLAG ="
> but they all cause a crash.
>
> Tk works OK.
>
> Cameron
>
|