Я пытаюсь построить R (проверены 2.14.2 и 2.15) и rpy2 (2.2.6, python 2.7.1) на ubuntu (11.04, natty narwhal), чтобы развернуть его в пользовательский каталог (в следующем названии/home/me/lib/R), поскольку у меня нет доступа root, но вам нужна более новая версия, чем доступная на сервере.Здание R (cran) + rpy2 на ubuntu -> libRblas.so не найдено
Детали сборки и т.д. далее вниз, но даже при выполнении испытания rpy2, я всегда получаю следующее сообщение об ошибке:
/home/me/lib/pythonlib/lib/python/rpy2/rinterface/__init__.py in <module>()
---> 87 from rpy2.rinterface._rinterface import *
ImportError: libRblas.so: cannot open shared object file: No such file or directory
WARNING: Failure executing file: <experiments/arrangement/test_smacof_arrange.py>
Я уверен, что я называю правый модуль rpy2 (мой заказ построил один) которая была построена по сравнению с пользовательской версией R. Для этого я делаю следующее:
Я первый построить R-базу на убунту
wget http://cran.r-project.org/bin/linux/ubuntu/natty/r-base_2.14.2.orig.tar.gz # untar and go to directory # enable-R-shblib flag is needed for rpy2 linking, enable-BLAS-shlib was included # because I hoped to solve the problem, which doesnt change anything however ./configure --enable-R-shlib --enable-BLAS-shlib --prefix=/home/me/lib/R make make install
Я тогда строить rpy2 против этого R строить
wget http://pypi.python.org/packages/source/r/rpy2/rpy2-2.2.6.tar.gz # untar and go to directory # build rpy2, by providing the r-home-lib and r-home flags, and deploy to custom dir python setup.py build --r-home /home/me/lib/R --r-home-lib /home/me/lib/R/lib64/R/lib install --home /home/me/lib/pythonlib
У меня также есть адаптировал мой pythonpath для поиска модулей в/home/me/lib/pythonlib, поэтому проблемы там нет. Сборки питона возвращает правильную конфигурацию (обратите внимание, что Rblas появляется здесь!)
Configuration for R as a library: include_dirs: ('/home/me/lib/R/lib64/R/include',) libraries: ('R', 'Rblas', 'Rlapack') library_dirs: ('/home/me/lib/R/lib64/R/lib',) extra_link_args:()
Я попытался отследить ошибку, но нет конца./home/me/lib/R/lib64/R/lib содержит libRblas.so, но есть одна вещь, которая кажется странной, однако, что libRblas.so не правильно связано с libR.so, но я не уверен, что это вызывает ошибку, и я не знаю, как ее исправить.
>> ldd -d libR.so
linux-vdso.so.1 => (0x00007fffcec58000)
libRblas.so => not found
libgfortran.so.3 => /usr/lib/x86_64-linux-gnu/libgfortran.so.3 (0x00007fe63d21d000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fe63cf97000)
...
Любая помощь была бы принята с благодарностью!
Моя проблема заключается в том, что я должен установить его в нестандартные каталоги, так как у меня нет root. Насколько я понимаю, двоичные файлы построены для стандартной структуры каталогов ubuntu? – flinz
Я этого не делал, но я думаю, вы можете дать команду dpkg распаковать .deb в другой целевой каталог. Затем вы можете установить LD_LIBRARY_PATH и др. Для размещения. –
hm, если это так, то это может сработать и будет действительным обходным путем. Я сделаю это выстрелом. Спасибо, я пока не могу подняться, но если бы мог. – flinz