From rhurlin at gwdg.de  Thu Oct 21 18:42:18 2010
From: rhurlin at gwdg.de (Rainer Hurling)
Date: Thu, 21 Oct 2010 18:42:18 +0200
Subject: [Rd] [R] R-2.12.0 hangs while loading RGtk2 on FreeBSD
In-Reply-To: <alpine.LFD.2.00.1010211704340.7969@toucan.stats.ox.ac.uk>
References: <4CC03E47.2010800@gwdg.de>
	<alpine.LFD.2.00.1010211508350.5999@toucan.stats.ox.ac.uk>
	<4CC052D6.3030106@gwdg.de>
	<alpine.LFD.2.00.1010211704340.7969@toucan.stats.ox.ac.uk>
Message-ID: <4CC06D6A.8040609@gwdg.de>

[moved from R-help]

On 21.10.2010 18:09 (UTC+1), Prof Brian Ripley wrote:
> If you do R CMD INSTALL --no-test-load this will skip the part that is
> hanging and you can try loading in stages (e.g. dyn.load on the RGtk2.so).

With '--no-test-load' it installs and ends normal. Loading per 
dyn.load("RGtk2.so") works, just as dyn.load("RGtk2.so",F) and 
dyn.load("RGtk2.so",,F). Unloading works, too.

Normal loading over library(RGtk2) within R does not work. R than is 
hanging.

It seems the problem is not with the library itself?

> I think this is rather technical for R-help, so maybe move to R-devel?

I moved to R-devel.

> And can you check the RGtk2 version? A recent but not current version
> (2.12.17?) did hang initializing Gtk+ on some platforms and Michael
> Lawrence had to be involved.

I am using RGtk2_2.12.18.tar.gz for month now.

> On Thu, 21 Oct 2010, Rainer Hurling wrote:
>
>> Am 21.10.2010 16:12 (UTC+1) schrieb Prof Brian Ripley:
>>> On Thu, 21 Oct 2010, Rainer Hurling wrote:
>>>
>>>> I am working with R-2.12.0 on FreeBSD 9.0-CURRENT for a while now. I
>>>> successfully installed more than 300 packages (most as dependencies of
>>>> others).
>>>>
>>>> There are two packages I am not able to install: RGtk2 and rggobi.
>>>>
>>>> For example rggobi builds fine and after that it wants to load:
>>>>
>>>> ------------------------------------------------------
>>>> # R CMD INSTALL rggobi_2.1.16.tar.gz
>>>> [..SNIP..]
>>>> gcc -std=gnu99 -shared -L/usr/local/lib -o rggobi.so RSEval.o brush.o
>>>> colorSchemes.o conversion.o data.o dataset.o display.o displays.o
>>>> edges.o ggobi.o identify.o init.o io.o keyHandlers.o longitudinal.o
>>>> modes.o plot.o plots.o plugins.o print.o session.o smooth.o ui.o
>>>> utils.o -pthread -L/usr/local/lib -lggobi -lgtk-x11-2.0 -lxml2
>>>> -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lXext
>>>> -lXrender -lXinerama -lXi -lXrandr -lXcursor -lXcomposite -lXdamage
>>>> -lpangoft2-1.0 -lgio-2.0 -lXfixes -lcairo -lX11 -lpango-1.0 -lm
>>>> -lfreetype -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0
>>>> -lglib-2.0
>>>> installiert nach /usr/local/lib/R/library/rggobi/libs
>>>> ** R
>>>> ** data
>>>> ** moving datasets to lazyload DB
>>>> ** demo
>>>> ** preparing package for lazy loading
>>>> ------------------------------------------------------
>>>>
>>>> At this point the install process is hanging, R utilises no more CPU
>>>> time. Same with package RGtk2.
>>>>
>>>> Is this a known error? Please let me know if I can give more
>>>> information or try something different.
>>>
>>> Well, those are exactly the two packages using Gtk+.
>>>
>>> There is no known general problem, and as you could have checked from
>>> the CRAN check pages, those packages install without problems on several
>>> platforms. (Not Solaris, where ggobi does not install and RGtk2 requires
>>> gcc, and not x64 Windows where both need to be patched.)
>>>
>>> So it does look very like there is a problem with loading against the
>>> Gtk+ system libraries on your system.
>>
>> I think you are right. With previous versions of R (until R-2.10.x) I
>> did not have this hanging when loading RGtk2 ... And I am pretty sure
>> that I have no problems with gtk2 outside of R on my FreeBSD system.
>>
>> In the meantime I found out that the reported loading error of rggobi
>> is a loading error of RGtk2, which fails (hangs). So there remains
>> only a loading error with RGtk2. (Because of that I changed the subject.)
>>
>> After building/installing RGtk2, there are the following messages:
>>
>> ------------------------------------------------------
>> [..SNIP..]
>> gcc -std=gnu99 -shared -L/usr/local/lib -o RGtk2.so RGtkDataFrame.o
>> Rgtk.o atkAccessors.o atkClasses.o atkConversion.o atkFuncs.o
>> atkManuals.o atkUserFuncs.o cairo-enums.o cairoAccessors.o
>> cairoConversion.o cairoFuncs.o cairoManuals.o cairoUserFuncs.o
>> classes.o conversion.o eventLoop.o gdkAccessors.o gdkClasses.o
>> gdkConversion.o gdkFuncs.o gdkManuals.o gdkUserFuncs.o glib.o
>> gobject.o gtkAccessors.o gtkClasses.o gtkConversion.o gtkFuncs.o
>> gtkManuals.o gtkUserFuncs.o libgladeAccessors.o libgladeFuncs.o
>> libgladeManuals.o libgladeUserFuncs.o pangoAccessors.o pangoClasses.o
>> pangoConversion.o pangoFuncs.o pangoManuals.o pangoUserFuncs.o utils.o
>> zcompat.o -pthread -L/usr/local/lib -lglade-2.0 -lgtk-x11-2.0 -lxml2
>> -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lXext
>> -lXrender -lXinerama -lXi -lXrandr -lXcursor -lXcomposite -lXdamage
>> -lpangoft2-1.0 -lgio-2.0 -lXfixes -lcairo -lX11 -lpango-1.0 -lm
>> -lfreetype -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0
>> -lglib-2.0 -pthread -L/usr/local/lib -lgthread-2.0 -lglib-2.0
>> installiert nach /usr/local/lib/R/library/RGtk2/libs
>> ** R
>> ** demo
>> ** inst
>> ** preparing package for lazy loading
>> ** help
>> *** installing help indices
>> ** building package indices ...
>> ** testing if installed package can be loaded [..hanging from here..]
>> ------------------------------------------------------
>>
>> Is there a chance to find out what is wrong with loading RGtk2 on my
>> system? Unfortunately I have almost no experience with real debugging
>> methods on R. But of course I am willing to help and try out ...



[Rd] [R] R-2.12.0 hangs while loading RGtk2 on FreeBSD
Rainer Hurling