Jan: This is hard/impossible for me to read. I do not use a html email client, so if you used colour here, I don't see. Please use indentation if you can.
On 10 September 2017 at 22:35, Jan Wijffels wrote: | Solaris no longer really matters. | Does that mean that CRAN will accept a package which gives errors on | Solaris? I don't know. Only CRAN can speak to that. But Solaris no exists (as an Oracle product) and is no longer maintained at U Oxford meaning CRAN may noe have test machines any more. | | You could add C++11 conditionally, ie only on Linux/macOS/Windows | Yes, but I always need C++11 for this package. I just wanted to make a | small reproducible example. The bigger reproducible example is the package | at https://github.com/bnosac/udpipe Fine, then use it. I use CXX_STD=CXX11 in many of my packages too. | If I add the Rcpp.h header to file | https://github.com/bnosac/udpipe/blob/master/src/udpipe.cpp, I'm getting | issues similar to this | | udpipe.cpp:23406:30: error: macro "Free" passed 2 arguments, but takes just 1 | alloc->Free(alloc, p->probs); Quite possibly not a Solaris issue but a simply _ordering issue_: place Rcpp.h last, not first, and/or tell R not to define macros. An `#undef` may help too. | ​ Also [[Rcpp::plugins(cpp11)]] should not be needed in a package. | Thank you for the remark. The udpipe package currently uses CXX_STD=CXX11 | in Makevars and specifies SystemRequirements: C++11 in DESCRIPTION. Example You need one of these two, not both. | was just put there to show a minimal example of the error, coming from when | Rcpp compiles the attributes. | | If you could provide a pointer where I should look for a solution, this | would be great otherwise the package which is now on CRAN will be rejected | any time soon I think. Try reordering. Hth, Dirk | | best, | Jan | | | | | | | Jan Wijffels | Statistician | www.bnosac.be | +32 486 611708 | | On 6 September 2017 at 18:49, Dirk Eddelbuettel <e...@debian.org> wrote: | | > | > Hi Jan, | > | > On 6 September 2017 at 15:03, Jan Wijffels wrote: | > | I'm trying to fix the installation issue I have with the package udpipe: | > | https://github.com/bnosac/udpipe but I'm getting issues on Solaris | > giving | > | messages like this: | > | > Solaris no longer really matters. | > | > | If I do not add ​SystemRequirements: C++11 and remove the Makevars file, | > | this works fine on Solaris. | > | > You could add C++11 conditionally, ie only on Linux/macOS/Windows. You | > could | > use (even a shell script named) configure for that. | > | > | I need however C++11 as I need it in the udpipe | > | R package for building udpipe.cpp but can't add | > | to that udpipe.cpp file the following types of statements due to | > conflicts | > | on the use of the Free macro. | > | #include <Rcpp.h> | > | using namespace Rcpp; | > | // [[Rcpp::plugins(cpp11)]] | > | > Can you explain a bit more? What Free macro? Do you know about forcing R | > to | > add Rf_ to its macros? | > | > Also [[Rcpp::plugins(cpp11)]] should not be needed in a package. | > | > Dirk | > | > -- | > http://dirk.eddelbuettel.com | @eddelbuettel | e...@debian.org | > -- http://dirk.eddelbuettel.com | @eddelbuettel | e...@debian.org _______________________________________________ Rcpp-devel mailing list Rcpp-devel@lists.r-forge.r-project.org https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/rcpp-devel