我在我的Mountain Lion Mac上安装了R3.0,经过一些试验和错误后,http ://r.research.att.com/为R3.0:GTK + 2.24.17框架提出了GTK版本.
我将软件包加载到R3.0并运行其中一个演示.我看到(暂时)生成了一个图形,但是R立刻崩溃了.通常情况下,当我运行"win $ showAll()"行时会发生崩溃(CairoDevice工作没问题).这是生成错误日志的开始(包含我的配置的详细信息).谢谢!
Process: R [2307]
Path: /Applications/R.app/Contents/MacOS/R
Identifier: org.R-project.R
Version: R 3.0.0 GUI 1.60 Snow Leopard build (6476)
Code Type: X86-64 (Native)
Parent Process: launchd [231]
User ID: 501
Date/Time: 2013-04-07 23:54:11.976 +0100
OS Version: Mac OS X 10.8.3 (12D78)
Report Version: 10
Interval Since Last Report: 11186 sec
Per-App Interval Since Last Report: 1133 sec
Per-App Crashes Since Last Report: 11
Anonymous UUID: 2C9EB7F4-E0B7-FDC4-7300-075C23CD86BB
Crashed Thread: 0 Dispatch queue: com.apple.main-thread
Exception Type: EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Application Specific Information:
Assertion failed: (_cairo_status_is_error (status)), function _cairo_error, file cairo-error.c, line 68.
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 libsystem_kernel.dylib 0x00007fff8afbd212 __pthread_kill + 10
1 libsystem_c.dylib 0x00007fff867ccb54 pthread_kill + 90
2 libsystem_c.dylib 0x00007fff86810dce abort + 143
3 libsystem_c.dylib 0x00007fff86811e2a __assert_rtn + 146
4 libcairo.2.dylib 0x000000010d383cdc _cairo_error + 48
5 libcairo.2.dylib 0x000000010d37c6f7 _cairo_set_error + 19
6 libgtk-x11-2.0.0.dylib 0x000000010eca326a gtk_default_draw_focus + 554
7 libgtk-x11-2.0.0.dylib 0x000000010ec63dfc gtk_range_expose + 1644
8 libgtk-x11-2.0.0.dylib 0x000000010ec7e2b8 gtk_scale_expose + 120
9 libgtk-x11-2.0.0.dylib 0x000000010ec22e79 _gtk_marshal_BOOLEAN__BOXED + 169
10 libgobject-2.0.0.dylib 0x0000000109642455 g_closure_invoke + 245
11 libgobject-2.0.0.dylib 0x00000001096524c8 signal_emit_unlocked_R + 2216
12 libgobject-2.0.0.dylib 0x0000000109653528 g_signal_emit_valist + 3336
13 libgobject-2.0.0.dylib 0x0000000109653a64 g_signal_emit + 116
14 libgtk-x11-2.0.0.dylib 0x000000010ed38bd8 gtk_widget_event_internal + 664
15 libgtk-x11-2.0.0.dylib 0x000000010eba0fc1 gtk_container_propagate_expose + 369
16 libgtk-x11-2.0.0.dylib 0x000000010eb72e06 gtk_box_forall + 54
17 libgtk-x11-2.0.0.dylib 0x000000010eba3936 gtk_container_expose + 150
18 libgtk-x11-2.0.0.dylib 0x000000010ec22e79 _gtk_marshal_BOOLEAN__BOXED + 169
19 libgobject-2.0.0.dylib 0x0000000109642455 g_closure_invoke + 245
20 libgobject-2.0.0.dylib 0x00000001096524c8 signal_emit_unlocked_R + 2216
21 libgobject-2.0.0.dylib 0x0000000109653528 g_signal_emit_valist + 3336
22 libgobject-2.0.0.dylib 0x0000000109653a64 g_signal_emit + 116
23 libgtk-x11-2.0.0.dylib 0x000000010ed38bd8 gtk_widget_event_internal + 664
24 libgtk-x11-2.0.0.dylib 0x000000010eba0fc1 gtk_container_propagate_expose
Run Code Online (Sandbox Code Playgroud)
我也有这个问题.以下是我使用macports gtk2解决它的问题 - 而不是 http://r.research.att.com/ 版本.这是与R版本3.0.1(2013-05-16) - "好运动",也是从源头编译.
sudo port install gtk2 ## (X11 -- not aqua)
Run Code Online (Sandbox Code Playgroud)
export PATH=/opt/local/bin:/opt/local/sbin:$PATH
Run Code Online (Sandbox Code Playgroud)
R CMD INSTALL RGtk2
R CMD INSTALL cairoDevice
Run Code Online (Sandbox Code Playgroud)
除了jverzani的回答,如果你想使用Homebrew:
brew install gtk+
export PKG_CONFIG_PATH=/usr/X11/lib/pkgconfig:$PKG_CONFIG_PATH
Run Code Online (Sandbox Code Playgroud)
然后从源安装RGtk2和cairoDevice.
我要感谢所有为解决这个问题做出贡献的人。经过多次尝试(而且是深夜!),最终我成功解决了这个问题。已提出的基本方法是:
使用自制程序安装 GTk+ 和 cairo
使用 macports 安装 GTk2 和 cairo
我从来没有成功地用 macports 来完成这项工作,但经过多次无果而终的尝试后,我最终用 homebrew 成功了。我清理了我的 PATH,它变得有点混乱。然后我基本上卸载了X11、GTk+、cairo以及它们所有的依赖项。
我首先安装了 XQuartz-2.7.4。
为了安装所有需要的组件,我按照此处的说明进行操作,并使用 homebrew 和相关说明安装了 yarp。大多数人可能会觉得这很奇怪(我就是这么做的),但是安装 yarp 会依次安装使 GTk+ 工作所需的所有依赖项(显然我尝试只安装 GTk+ 和 cairo,但它从未工作或最终 RGTk2 无法编译)。
然后我从源安装(使用 R CMD INSTALL)GTk2、Cairo、cairoDevice 和 Rattle。经过这么多个月的努力解决问题,我简直不敢相信一切都成功了!
再次感谢所有为解决问题做出努力和研究的人们。
恩佐