[GRASS-dev] debugging nviz with TclTk 8.5 aqua

Michael Barton michael.barton at asu.edu
Tue Jul 22 11:44:43 EDT 2008


On Jul 22, 2008, at 5:07 AM, Glynn Clements wrote:

>
> Michael Barton wrote:
>
>> After some delays, I managed to recompile GRASS 7 with CFLAGS="-arch
>> i386 -g", etc so that gdb would produce useful output, and with TclTk
>> 8.5 aqua for Mac. Running nviz in gdb gives the results below.
>> Hopefully these are more helpful. It freezes at the last line.
>
>> Program received signal EXC_BAD_ACCESS, Could not access memory.
>> Reason: KERN_PROTECTION_FAILURE at address: 0x00000024
>> 0x0001702d in Togl_CreateWindow (tkwin=0x1fdb608, parent=30857160,
>> instanceData=0x758db0) at togl.c:2338
>> 2338	        if (!aglSetDrawable(togl->aglCtx,
>
> The complete line is:
>
>        if (!aglSetDrawable(togl->aglCtx,
> #  if defined(TOGL_AGL)
>                        ((MacDrawable *) (window))->toplevel->grafPtr
> #  else
>                        ((MacDrawable *) (window))->toplevel->portPtr
> #  endif
>                )) {
>
> togl and togl->aglCtx are known to be non-NULL (otherwise it would
> have crashed before then). Can you try the following:
>
> 	print ((MacDrawable *) (window))
> 	print ((MacDrawable *) (window))->toplevel
> 	print ((MacDrawable *) (window))->toplevel->grafPtr

I'm assuming that you mean to enter these lines in gdb. Here is the  
result.

(gdb) run -f $GISBASE/etc/nviz2.2/scripts/nviz2.2_script -q
Starting program: /Applications/Grass/GRASS-7.0.app/Contents/MacOS/etc/ 
nviz2.2/nviz -f $GISBASE/etc/nviz2.2/scripts/nviz2.2_script -q
Reading symbols for shared libraries ++++++++++++++++++++++ 
+ 
...................................................................................... done
Reading symbols for shared libraries . done
Reading symbols for shared libraries ....... done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done

Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_PROTECTION_FAILURE at address: 0x0000002c
0x0001702d in Togl_CreateWindow (tkwin=0x1d89608, parent=30902152,  
instanceData=0x7579c0) at togl.c:2338
2338	        if (!aglSetDrawable(togl->aglCtx,
(gdb) print ((MacDrawable *) (window))
No symbol "MacDrawable" in current context.
(gdb) print ((MacDrawable *) (window))->toplevel
No symbol "MacDrawable" in current context.
(gdb) print ((MacDrawable *) (window))->toplevel->grafPtr
No symbol "MacDrawable" in current context.

Michael



More information about the grass-dev mailing list