[R-SIG-Mac] rgl for R-devel
Duncan Murdoch
murdoch.duncan at gmail.com
Sat Jul 19 11:42:17 CEST 2014
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...
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