Common install of R on network disk
On Tue, Jul 7, 2015 at 2:42 AM, Lionel SPINELLI <spinelli at ciml.univ-mrs.fr> wrote:
Hello all, I am looking for information on how to install R on a network disk so that it can be used by several users mounting this network disk from different computers. We are using a cluster and shared computers in my lab. Those machines can mount network disks. On those disks we have installed several tools, like samtools that can be used from any user and from any machine since they have installs that do no required any system libraries. We would like to do the same thing with R: have a folder in the network disk that contains R (and its libraries) and that permits to execute it from any machine that mount the network disk. However, it seems R uses system libraries since, once the installation done we obtain the following message when trying to execute it from a different machine than the one from which R was installed: error while loading shared libraries: libicuuc.so.52: cannot open shared object file: No such file or directory This library seems present on the machine executing R but seems not found the same. We did not found any info on how to set a lib path in order to put that library with the R install. Do you know any reference that explain how to successfully achieved the R install as we would like to? Thanks a lot in advance
First, I am assuming that all the clients are running the same OS at the
same, or compatible, levels. I am also assuming Linux, but that may be
pushing it. What I _think_ will work (I can't test it where I am now) is to
set the LD_LIBRARY_PATH environment to include the directory which contains
the libicuuc.so file.
For a possible example, suppose libicucc.so is in the directory
/network/disk/R-installation/lib, then try the command (I am using BASH):
LD_LIBRARY_PATH="${LD_LIBRARY_PATH}${LD_LIBRARY_PATH+:}/network/disk/R-installation/lib"
R
Yes, the above is _ugly_. An easier way might be do to the following (as
root) on all the systems which want to run R (# is the command prompt for
"root", not something you type in!)
# echo "/netwrok/disk/R-installation/lib" >>/etc/ld.so.conf.d/R-network.conf
# ldconfig
What the above does is add the directory /network/disk/R-installation/lib
(which contains the R shared libraries) to the directories automatically
searched for shared libraries. You can add more that one directory name,
each on a separate line, into the R-network.conf file. Oh, the name of the
file can be anything you like but must be in the directory
/etc/ld.so.conf.d and end in ".conf". E.g. R-network.conf or
myIdiotBrother.conf would both work.
# echo "/network/disk1/R-installation/lib"
/etc/ld.so.conf.d/R-network.conf
# echo "/network/disk2/R-2nd/lib" >>/etc/ld.so.conf.d/R-network.conf # echo "/some/other/directory/entirely" >>/etc/ld.so.conf.d/R-network.conf # ldconfig would add the three mentioned directories. This stackoverflow discussion might be of some help as well: http://stackoverflow.com/questions/13428910/how-to-set-the-environmental-variable-ld-library-path-in-linux
[http://sesame.univ-amu.fr/Logos/logo_sciences.jpg] Lionel Spinelli - Ing?nieur de recherche en bioinformatique UMR_S 1090 TAGC et UMR_S 1104 CIML Aix-Marseille Universit? - LUMINY - 163 Avenue de Luminy - 13009 Marseille T?l: +33(0)4 91 82 87 12 (TAGC) / +33(0)4 91 26 91 90 (CIML) Site : http://www.univ-amu.fr<http://www.univ-amu.fr/> - Email : lionel.spinelli at univ-amu.fr<mailto:lionel.spinelli at univ-amu.fr>
Schrodinger's backup: The condition of any backup is unknown until a restore is attempted. Yoda of Borg, we are. Futile, resistance is, yes. Assimilated, you will be. He's about as useful as a wax frying pan. 10 to the 12th power microphones = 1 Megaphone Maranatha! <>< John McKown [[alternative HTML version deleted]]