[Bioc-devel] tokay1 C++14 compiler

Kasper Daniel Hansen k@@perd@n|e|h@n@en @end|ng |rom gm@||@com
Tue Jul 30 20:14:10 CEST 2019


Well, that's pretty clear. The compiler apparently doesn't support C++14
(perhaps ask about this on the Stan support - it suggests that Stan doesn't
run on Windows with default Rtools). When you delay compiling the models to
runtime, of course the package builds - it just won't work for any user.

Best,
Kasper

On Mon, Jul 29, 2019 at 1:54 PM Simo Kitanovski <simo.kitanovski using uni-due.de>
wrote:

> Surprisingly, if I design the package such that the stan models are
> compiled only at run-time I get no issues -> all servers build the package
> correctly. (https://github.com/Bioconductor/Contributions/issues/1187)
>
> On the other hand, if I follow the rstan instructions on how to design an
> R package that depends on rstan, based on which the stan models are
> compiled only once during the build, then I get the previously mentioned
> failure only on the windows-based server.
>
> BTW: Recent updates from stan community suggest that the new rstan version
> 2.20 will reduce the model compilation time from ~35sec to ~7sec, which
> makes the decision of sticking with the run-time compilation setup not so
> bad.
> On 29.07.19 8:37 nachm., Kasper Daniel Hansen wrote:
>
> My understanding - and I could be wrong - is that Stan compiles a model,
> so the compiler needs to be available at run time and not just at build
> time.
>
> On Thu, Jul 25, 2019 at 4:02 PM Simo Kitanovski <
> simo.kitanovski using uni-due.de> wrote:
>
>> Thanks!
>>
>> I will try to revise the code to avoid CXX14 if this is that case.
>>
>> Best
>>
>>
>> On 25.07.19 11:52 nachm., Martin Morgan wrote:
>> > Windows (and macOS) CRAN packages are installed as binaries (as
>> experienced by the typical user), so don't need compilation-- Rstan is
>> built by CRAN through whatever magic / agreement.
>> >
>> > The paragraph at the very end of
>> >
>> >
>> https://cran.r-project.org/doc/manuals/r-release/R-exts.html#Using-C_002b_002b14-code
>> >
>> > suggests
>> >
>> > Note that g++ 4.9.x (as used for R on Windows at the time of writing)
>> has only partial C++14 support, and the flag to obtain that support is not
>> included in the default Windows build of R
>> >
>> > so my understanding of this is that CXX14 is not supported on Windows.
>> The options are either to revise your code to avoid CXX14 or to anticipate
>> that your package will be 'Unsupported on Windows' (thereby losing 1/2 your
>> user base).
>> >
>> > The expert on this (Hervé) will not be back for several days.
>> >
>> > Martin
>> >
>> > On 7/25/19, 6:33 PM, "Bioc-devel on behalf of Kasper Daniel Hansen" <
>> bioc-devel-bounces using r-project.org on behalf of
>> kasperdanielhansen using gmail.com> wrote:
>> >
>> >      What's weird here is that you supposedly depend on rstan which also
>> >      requires a C++14. How can the build system have that package
>> installed
>> >      without having a compliant compiler?
>> >
>> >
>> >      On Thu, Jul 25, 2019 at 12:05 PM Simo Kitanovski <
>> simo.kitanovski using uni-due.de>
>> >      wrote:
>> >
>> >      > Hello Bioconductor community,
>> >      >
>> >      > I maintain the Bioconductor package genphen which depends on
>> rstan for
>> >      > MCMC sampling. To build the package one needs a C++14 compiler.
>> >      >
>> >      > I have no problem building the package on malbec1 and merida1,
>> but not
>> >      > on tokay1. Any idea of what might have gone wrong on this server
>> and how
>> >      > to use C++14? I have submitted a new package (IgGeneUsage) which
>> also
>> >      > uses rstan and have the same problem (see build report below).
>> >      >
>> >      > BTW: why do we see this under the C++14 compiler box for tokay1:
>> >      > Compiler version (' --version' output):
>> >      > '--version' is not recognized as an internal or external command,
>> >      > operable program or batch file.
>> >      >
>> >      > Any ideas?
>> >      >
>> >      > Best
>> >      >
>> >      > ===============================
>> >      >
>> >      >   R CMD BUILD
>> >      >
>> >      > ===============================
>> >      > * checking for file 'IgGeneUsage/DESCRIPTION' ... OK
>> >      > * preparing 'IgGeneUsage':
>> >      > * checking DESCRIPTION meta-information ... OK
>> >      > * cleaning src
>> >      > * installing the package to build vignettes
>> >      >        -----------------------------------
>> >      > * installing *source* package 'IgGeneUsage' ...
>> >      > ** using staged installation
>> >      > ** libs
>> >      > Error in .shlib_internal(args) :
>> >      >    C++14 standard requested but CXX14 is not defined
>> >      > * removing
>> >      >
>> >      >
>> 'C:/Users/pkgbuild/AppData/Local/Temp/RtmpUDyHnY/Rinst315c22dc5ac/IgGeneUsage'
>> >      >        -----------------------------------
>> >      > ERROR: package installation failed
>> >      >
>> >      > _______________________________________________
>> >      > Bioc-devel using r-project.org mailing list
>> >      > https://stat.ethz.ch/mailman/listinfo/bioc-devel
>> >      >
>> >
>> >
>> >      --
>> >      Best,
>> >      Kasper
>> >
>> >       [[alternative HTML version deleted]]
>> >
>> >      _______________________________________________
>> >      Bioc-devel using r-project.org mailing list
>> >      https://stat.ethz.ch/mailman/listinfo/bioc-devel
>> >
>>
>
>
> --
> Best,
> Kasper
>
>

-- 
Best,
Kasper

	[[alternative HTML version deleted]]



More information about the Bioc-devel mailing list