[R-SIG-Mac] rgl for R-devel

Duncan Murdoch murdoch.duncan at gmail.com
Sat Jul 19 12:05:32 CEST 2014


On 19/07/2014, 4:42 AM, Duncan Murdoch wrote:
> On 18/07/2014, 8:18 PM, Simon Urbanek wrote:
>> Duncan,
>>
>> I didn't look at the code, but the approach seems strange - if you use something from the GLKit framework then the include should be
>>
>> #include <GLKit/GLKMathUtils.h>
>>
>> without specifying -I... You should never have the need to include the "Headers" directory directly (other than cases where the framework contains non-framework headers like R does) since frameworks are searched automatically when referenced.
> 
> Thanks.  I forget where that code came from.  Obviously I don't know
> much about OSX programming.
> 
> One other question that might be simple, or might not:  I'm seeing
> problems in Cocoa because after a user closes an rgl window (by clicking
> on the x on the frame), the cleanup code is not being called.  rgl declares
> 
> @interface GLView : NSOpenGLView {
>   rgl::OSXWindowImpl *impl;
>   NSUInteger lastModifierFlags;
> }
> 
> - (id)initWithFrame:(NSRect)frame
>         pixelFormat:(NSOpenGLPixelFormat *)pixelFormat
>                impl:(rgl::OSXWindowImpl *)impl;
> @end
> 
> and then in the implementation section has the cleanup code in
> 
> - (void)dealloc
> {
>   if (impl) impl->on_dealloc();
>   [super dealloc];
> }
> 
> but as far as I can tell this isn't being called when the user closes
> the window.  Is there some other method that is called to allow cleanup?
>  The Apple docs probably talk about this somewhere, but I haven't found
> where...
> 

More precisely:  this isn't being called *immediately* when the window
is closed.  It is called a little bit later, but in some circumstances
that's too late, because the user can ask rgl to do something in between
and it tries to make changes to a window that isn't there any more.

Duncan Murdoch

> Duncan Murdoch
> 
>>
>> @Roger: on 10.9.2 (darwin 13.1.0 - which matches your build) I see
>> $ ls -l /System/Library/Frameworks/GLKit.framework/Headers/
>> total 16
>> -rw-r--r--  1 root  wheel   7327 Apr 11 05:49 GLKBaseEffect.h
>> -rw-r--r--  1 root  wheel   1435 Apr 11 05:49 GLKEffectProperty.h
>> [...]
>> -rw-r--r--  1 root  wheel   1224 Apr 11 05:49 GLKMathUtils.h
>> [...]
>>
>> Cheers,
>> Simon
>>
>>
>> On Jul 18, 2014, at 9:07 PM, Duncan Murdoch <murdoch.duncan at gmail.com> wrote:
>>
>>> On 18/07/2014, 4:41 PM, Roger Koenker wrote:
>>>> I'm trying to
>>>>
>>>> install.packages("rgl", type = "source")
>>>>
>>>> with
>>>>
>>>>> sessionInfo()
>>>> R Under development (unstable) (2014-07-09 r66111)
>>>> Platform: x86_64-apple-darwin13.1.0 (64-bit)
>>>>
>>>> locale:
>>>> [1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
>>>>
>>>> attached base packages:
>>>> [1] stats     graphics  grDevices utils     datasets  methods   base     
>>>>
>>>> other attached packages:
>>>> [1] quantreg_5.05 SparseM_1.05 
>>>>
>>>> loaded via a namespace (and not attached):
>>>> [1] tcltk_3.2.0 tools_3.2.0
>>>>
>>>> and seeing (eventually):
>>>>
>>>> clang++ -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/System/Library/Frameworks/GLKit.framework/Headers -I/System/Library/Frameworks/OpenGL.framework/Headers  -DHAVE_PNG_H -I/usr/local/include/libpng12 -I/usr/X11/include -DDarwin -DNO_GL_PREFIX -I/usr/X11R6/include -DHAVE_FREETYPE -Iext/ftgl -I/opt/X11/include/freetype2 -Iext -I/usr/local/include -I/usr/local/include/freetype2 -I/opt/X11/include   -Wall -mtune=core2 -g -O2  -fPIC  -Wall -mtune=core2 -g -O2  -c platform.cpp -o platform.o
>>>> platform.cpp:16:10: fatal error: 'GLKMathUtils.h' file not found
>>>> #include <GLKMathUtils.h> 
>>>>         ^
>>>> 1 error generated.
>>>> make: *** [platform.o] Error 1
>>>> ERROR: compilation failed for package ‘rgl’
>>>>
>>>> I do have a GLKit.framework  but there is no Headers subdir ...  
>>>>
>>>
>>> What OSX version is that?  There were warnings about deprecated code in
>>> rgl, so I switched to using GLKMathUtils, but apparently the configure
>>> script isn't quite right.
>>>
>>> Duncan Murdoch
>>>
>>> _______________________________________________
>>> R-SIG-Mac mailing list
>>> R-SIG-Mac at r-project.org
>>> https://stat.ethz.ch/mailman/listinfo/r-sig-mac
>>>
>>
>



More information about the R-SIG-Mac mailing list