[Bioc-devel] GLX extension missing on petty

Jiří Hon xhonji01 at stud.fit.vutbr.cz
Fri Apr 5 11:11:48 CEST 2013


> In the short term, you can disable all vignette code chunks that use
> rgl (with eval=FALSE), and do the same with examples that use rgl
> (with \dontrun{}).

Thank you a lot for tracking that down. Unfortunately all vignette code  
chunks that use rgl have been always disabled with eval=FALSE. That  
probably means we have no way to workaround this problem on petty.

Dne Fri, 05 Apr 2013 01:22:52 +0200 Dan Tenenbaum <dtenenba at fhcrc.org>  
napsal(a):

> On Wed, Apr 3, 2013 at 9:45 AM, Dan Tenenbaum <dtenenba at fhcrc.org> wrote:
>> Hi Jirka,
>>
>>
>> On Wed, Apr 3, 2013 at 9:06 AM, Jiří Hon <xhonji01 at stud.fit.vutbr.cz>  
>> wrote:
>>> Hi,
>>> the latest bioc build of my new package 'triplex' on petty ended with  
>>> this
>>> error message:
>>>
>>> Warning in rgl.init(initValue) : RGL: GLX extension missing on server
>>> Warning in fun(libname, pkgname) : error in rgl_init
>>>
>>> For full report see
>>> http://bioconductor.org/checkResults/devel/bioc-LATEST/triplex/petty-buildsrc.html
>>>
>>> And I am wondering if there is anything I could do to fix this.  
>>> Probably
>>> it's a build system problem, but other packages that depends on rgl and
>>> plots in 3D have no such build error (i.e. RDRToolbox) and that makes  
>>> me
>>> sligthly nervous, so I would really appreciate any advice.
>>
>> This is a build system problem, and I am looking into it.
>> The build system runs under Xvfb, but I have no problem building your
>> package when logged into the console of petty.
>>
>
> A little more info on this.
>
> There are two problems. The first is that as mentioned before, our
> builds do not run physically logged into the console; they use a
> virtual frame buffer (Xvfb).
>
> We could look into changing this, but at present triplex seems to be
> the only package having this problem.
>
> Xvfb apparently does not have the OpenGL extensions compiled in. I
> will check with the XQuartz people. They have been responsive before.
>
> The second problem is if I do log into the actual physical console of
> the machine, I am able to build triplex but I get the following
> segfault when trying to run R CMD check on triplex:
>
>
>
>> However,  do get a segfault when running R CMD check on the triplex
>> source tarball:
>>
>> $ R CMD check --no-vignettes --timings triplex_0.99.0.tar.gz
>> [...]
>> * checking examples ...sh: line 1: 41089 Segmentation fault
>> LANGUAGE=en _R_CHECK_INTERNALS2_=1
>> '/Library/Frameworks/R.framework/Resources/bin/R' --vanilla >
>> 'triplex-Ex.Rout' 2>&1 < triplex-Ex.R
>>  ERROR
>> Running examples in ?~@~Xtriplex-Ex.R?~@~Y failed
>> The error most likely occurred in:
>>
>>> base::assign(".ptime", proc.time(), pos = "CheckExEnv")
>>> ### Name: triplex-package
>>> ### Title: Triplex search and visualization package
>>> ### Aliases: triplex-package triplex
>>> ### Keywords: package
>>>
>>> ### ** Examples
>>>
>>> seq <- DNAString("GGAAAGCAATGCCAGGCAGGG")
>>> t <- triplex.search(seq)
>> Searching for triplex type 0...
>> Searching for triplex type 1...
>> Searching for triplex type 2...
>> Searching for triplex type 3...
>> Searching for triplex type 4...
>> Searching for triplex type 5...
>> Searching for triplex type 6...
>> Searching for triplex type 7...
>>> triplex.diagram(t[1])
>>   A DNAStringSet instance of length 4
>>     width seq                                               names
>> [1]     8 CCCTGCCT                                          minus
>> [2]     8 GGGACGGA                                          plus
>> [3]     8 CCTTTCGT                                          para-minus
>> [4]     5 GGCAT                                             loop
>>> triplex.3D(t[1])
>>
>>  *** caught segfault ***
>> address 0x0, cause 'memory not mapped'
>>
>> Traceback:
>>  1: .C(rgl_material, success = FALSE, idata, cdata, ddata)
>>  2: rgl.material(color = color, back = back, ...)
>>  3: rgl.bg(color = bgr.col)
>>  4: triplex.3D(t[1])
>> aborting ...
>>
>
> This turns out to be reproducible simply like this:
>
> library(rgl)
> example(rgl.material)
>
> And it's caused by the following line (Material.cpp:39) in the rgl  
> package:
>
>   const char* version = (const char*)glGetString(GL_VERSION);
>
> glGetString() is a function in the OpenGL library and it is segfaulting.
>
>
> Obviously that should not be happening. I'll try to track that down.
>
> In the short term, you can disable all vignette code chunks that use
> rgl (with eval=FALSE), and do the same with examples that use rgl
> (with \dontrun{}).
>
> The problem as far as I can tell is just on Snow Leopard which is what
> we use on our build systems.
> The package builds, checks, installs and runs OK on my Mountain Lion  
> laptop.
>
> Dan
>
>
>> Dan
>>
>>
>>>
>>> Thank you a lot for your time and patience,
>>> Jirka
>>>
>>> _______________________________________________
>>> Bioc-devel at r-project.org mailing list
>>> https://stat.ethz.ch/mailman/listinfo/bioc-devel



More information about the Bioc-devel mailing list