Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

compiling R 3.3.1

Tags:

linux

r

rhel6

I am trying to install R-3.3.1 on a RHEL6 box on which I do not have su permissions. Unfortunately the machine has older versions of zlib, bzip2, readline, xz, pcre, curl. I do not have access to yum repo nor will the admins help with this. So, I am have compiled those libraries as well and installed them in

<my home dir>/libs
    bzip2-1.0.6
    curl-7.48.0
    pcre-8.38
    readline-6.3
    xz-5.2.2
    zlib-1.2.8

When I run ldd on the .so files, I do NOT get any missing libraries. The only minor issue is

lib> ldd libcurl.so.4.4.0
        linux-vdso.so.1 =>  (0x00007ffec49ff000)
        libidn.so.11 => /lib64/libidn.so.11 (0x00007f2371b4b000)
        libz.so.1 => /lib64/libz.so.1 (0x00007f2371934000)  <== this does not point to the version I have compiled
        librt.so.1 => /lib64/librt.so.1 (0x00007f237172c000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f2371398000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f237117a000)
        /lib64/ld-linux-x86-64.so.2 (0x0000003e79000000)

Although I have set the CPPFLAGS, LDFLAGS and LIBS, and compiling with --with-zlib=<zlib dir>.

Now when I run ./configure --without-x after setting CPPFLAGS and LDFLAGS so that the above versions of the libraries are used, I get the following error.

checking libcurl version ... 7.19.7
checking curl/curl.h usability... yes
checking curl/curl.h presence... yes
checking for curl/curl.h... yes
checking if libcurl is version 7 and >= 7.28.0... yes
checking if libcurl supports https... no
configure: error: libcurl >= 7.28.0 library and headers are required with support for https

Is there any way of getting R to compile without support for https?

like image 885
ironv Avatar asked Mar 18 '26 16:03

ironv


1 Answers

There is a disconnect between you saying you have

curl-7.48.0

and the configure output

checking libcurl version ... 7.19.7

You may need to try to override the auto-detection used by configure to have it find your version of curl. There are switches, it also listens to environment variables, you could possibly create a local ~/lib/ and have ld.conf be aware of it. But this is now a configure / autoconf question and less of an R issue.

like image 121
Dirk Eddelbuettel Avatar answered Mar 21 '26 04:03

Dirk Eddelbuettel



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!