[Bioc-devel] GLX extension missing on petty

Jiří Hon xhonji01 at stud.fit.vutbr.cz
Sat Apr 6 19:39:28 CEST 2013


Dne Fri, 05 Apr 2013 19:07:12 +0200 Dan Tenenbaum <dtenenba at fhcrc.org>  
napsal(a):

> On Fri, Apr 5, 2013 at 2:11 AM, Jiří Hon <xhonji01 at stud.fit.vutbr.cz>  
> wrote:
>>> 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.
>>
>
> Turns out the real problem was unescaped accented characters in the
> vignette. Fixing that  along with two dontrun tags in example sections
> allows the package to build and check on Mac. I've made the changes in
> release and devel.

Thanks a lot for that, still it didn't pass check on Mac. So I removed the  
work around of rgl segfault on Mac that is probably unnecessary and I hope  
it helps. With dontrun tags around triplex.3D call no other rgl code  
should be executed during check.

Jirka

>
> Dan
>
>
>> 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