Mám R nainstalovaný samostatně a umím:
InstallR["RHomeLocation" -> "/usr/lib64/R"]
Jsem schopen spustit příklady uvedené v dokumentaci. Používám Fedoru 17 64 bit.
Tento problém jsem měl také na Ubuntu 12.04, ale toto řešení mi nepomohlo. Myslím, že jsem to ale vyřešil. Mám podezření, že několik mých kroků bylo zbytečných (nebo zbytečně spletitých), ale tady je:
Nejprve udělejte spouštěcí skript R a binární soubor nainstalovaný pomocí Mathematica jako spustitelný. Nevím, jestli je Mathematica skutečně provozuje, ale umožnila mi je otestovat.
cd ~/.Mathematica/Paclets/Repository/RLinkRuntime-Linux-x86-64-9.0.0.0/SystemFiles/Linux-x86-64/R/bin
chmod +x R
cd exec
chmod +x R
cd ..
gedit R
nebo jakýkoli textový editor. Spouštěcí skript měl spoustu odkazů na "/Developer/leonids/" pevně zakódovaných do cest. Nahradil jsem následující řádky:
04 R_HOME_DIR=/home/{my username}/.Mathematica/Paclets/Repository/RLinkRuntime-Linux-x86-64-9.0.0.0/SystemFiles/Linux-x86-64/R
35 R_SHARE_DIR="${R_HOME_DIR}/share"
37 R_INCLUDE_DIR="${R_HOME_DIR}/include"
39 R_DOC_DIR="${R_HOME_DIR}/doc"
Poté R stále nefungovalo z příkazového řádku; stěžovalo si, že nemá libg2c.so.0. To není k dispozici v žádné aktuálně udržované distribuci Ubuntu, ale vystopoval jsem RPM:compat-libf2c-34-3.4.6-9.x86_64.rpm.So,
sudo alien compat-libf2c-34-3.4.6-9.x86_64.rpm
sudo dpkg -i compat-libf2c-34-3.4.6-9.x86_64.deb
R si nadále stěžoval na chybějící libg2c.so.0. Ukázalo se, že to bylo na špatném místě, protože 64bitová Fedora a Ubuntu uchovávají své knihovny na různých místech.
sudo cp /usr/lib64/libg2c.* /usr/lib/
Voilà! R nyní funguje z příkazového řádku a RLink funguje také.
Mimochodem to vypadá, že libg2c je nyní v podstatě zastaralý, takže v ideálním případě by byl odstraněn jako závislost ve prospěch modernějšího běhového prostředí FORTRAN, např. gfortran.
Mám podezření, že se děje to, že váš typ Linuxu buď postrádá určité knihovny, které jsme považovali za standardní, nebo má verze těchto knihoven, které jsou v rozporu s některými z těch, které dodáváme s interní distribucí R. Bohužel není snadné přesně diagnostikovat, které knihovny jsou problematické, ale pokusím se na to navázat.
Situace s Linuxem je v současnosti následující:snažili jsme se ze všech sil otestovat různé linuxové distribuce, ale způsob, jakým RLink výchozí distribuce R funguje, je takový, že u některých linuxových distribucí může docházet ke konfliktům verzí knihoven, protože jsme museli rozšířit R distro. s dalšími závislými knihovnami.
Testovali jsme na CentOS 5 a také na Ubuntu. Právě jsem znovu otestoval a RLink mi funguje na Ubuntu 10.04 32 bit běžícím na virtuálním boxu (VMWare). A téměř jistě to není Java, protože RLink používá JVM, který je součástí Mathematica. Co uděláme pro Linux, je shromáždit různé podobné problémy a pokusit se je co nejlépe vyřešit. Některé problémy jsou však vlastní Linuxu, který má mnoho různých variant s poněkud odlišnými základními knihovnami.