r-hub / devops-issues

A place to collect the devops-y issue tickets for R-hub
0 stars 0 forks source link

Use Solaris compilers (alternatively) on Solaris. #18

Open gaborcsardi opened 6 years ago

gaborcsardi commented 6 years ago

I could compile R, but some recommended packages still fail....

gaborcsardi commented 6 years ago

OK, almost good now, still having problems with HTTPS, bc the dynamic linking to openssl fails...

tvatter commented 5 years ago

Hi,

I'm writing here because it looks like you have been more successful that I have in building R on solaris with solaris compilers.

We've recently received an email letting us know that our package rvinecopulib (https://cran.r-project.org/web/packages/rvinecopulib/index.html) would be removed from CRAN unless the errors from the solaris build were corrected.

Note that the package compile and the unit tests pass on the other test platforms from CRAN and even a local R devel build with ASAN / UBSAN sanitizers. On solaris, the package compiles but a segfault is produced by one unit test for a reason that we still don't understand.

To replicate the issue, I tried to mimic CRAN's solaris config (https://www.stats.ox.ac.uk/pub/bdr/Rconfig/r-patched-solaris-x86) in a virtual machine following the steps in the gist below (based on Jeroen's):

https://gist.github.com/tvatter/b2503f03fcd604ff764ffe4b979afcb6

Note that the "--with-readline=no" configure option at the end was added because I got "configure: error: --with-readline=yes (default) and headers/libs are not available" without it.

Unfortunately, I then got the "configure: error: a suitable iconv is essential" and could not proceed to build R.

I know that I should get GNU iconv as specified in the installation manual, hence the "/opt/csw/bin/pkgutil -y -i libiconv_dev" in the gist above. I verified that iconv is in /opt/csw/lib as expected and I thought that adding /opt/csw/lib to R_LD_LIBRARY_PATH as suggested in the manual would then do the trick, but it does not seem to be the case.

Since it looks like you've been able to compile R, any idea what I missed?