[AniMov] almost there with OpenSuSE 11.3 , R, QGIS and Homerange plugin
Joona Lehtomäki
joona.lehtomaki at cs.helsinki.fi
Thu Nov 18 13:32:24 CET 2010
Hi Gian Paolo,
I've ran into this problem a couple of times with Rpy2 and although I
don't know all the techical details, here's what I think and what solved
the problem for me on OpenSuSE 11.3 64-bit.
libRlapack.so shipping with R-base RPM for OpenSuSE 11.3 (and at least
11.2 before that) seems to be built with incompatible version of
libgfortran. I managed to find the details once, but didn't find them
again, sorry.
I got it working on OpenSuSE 11.3 (64 bit), but this requires building
R, Rpy2 and Rkward yourself. You can try the following:
1. build R (2.12.0) from sources with --prefix=/usr and --enable-R-shlib
and flags
2. try "from rpy2 import robjects". If you get an import error with
"libR.so not found", add a file R-x86_64.conf into /etc/ld.so.conf with
a single line:
/usr/lib64/R/lib
3. run ldconfig as root
4. Install rpy2 (2.1.8) with pip (or easy_install), not through Yast
You would also have to build Rkward yourself, otherwise Yast will want
to pull in dependencies.
Hope this helps,
Joona
> Hi Anne
> Thanks so much for answering.
> I did try and both, system and/or QGIS Python version are the same: 2.6.5.
> Then I tried the import rpy2.robjects as ro in the python console of
> QGIS but
> I do not understand the type of error. This is the outcomming text from the
> Kconsole or the Python console of QGIS:
>
> >>> import rpy2 as rpy2
> >>> import rpy2.robjects as ro
> Traceback (most recent call last):
> File "<input>", line 1, in <module>
> File "/usr/share/qgis/python/qgis/utils.py", line 291, in _import
> mod = _builtin_import(name, globals, locals, fromlist, level)
> File "/usr/local/lib64/python2.6/site-packages/rpy2/robjects/__init__.py",
> line 12, in <module>
> import rpy2.rinterface as rinterface
> File "/usr/share/qgis/python/qgis/utils.py", line 291, in _import
> mod = _builtin_import(name, globals, locals, fromlist, level)
> File
> "/usr/local/lib64/python2.6/site-packages/rpy2/rinterface/__init__.py",
> line 66, in <module>
> from rpy2.rinterface.rinterface import *
> File "/usr/share/qgis/python/qgis/utils.py", line 291, in _import
> mod = _builtin_import(name, globals, locals, fromlist, level)
> ImportError: /usr/lib64/R/lib/libRlapack.so: undefined symbol:
> _gfortran_concat_string
>
> I do not know where to go from here...
> thanks,
> Gian Paolo
>
>
> On Sunday 03 October 2010 06:17:52 you wrote:
> > On Fri, 2010-09-24 at 15:36 -0400, G. Paolo Sanino V. wrote:
> > > Hi,
> >
> > Hi Gianpaolo,
> >
> > > A lot has been done, searched and found, and it is almost there.
> > >
> > > The error is that cannot load Rpy2, despite it has been installed.
> > >
> > > This is an attempt to get it working using GUI and for newbies (as
> > > myself). Here I added all the packages that solved the many
> > > dependencies that raised in during this challenge.
> > >
> > > The box is an AMD64 box with OpenSuSE 11.3 installed from scratch
> > >
> > > Then this is what I have done so far:
> > >
> > > Using the one-click tool at the http://software.opensuse.org and/or
> > > adding the repositories with Yast2:
> > >
> > >
> http://download.opensuse.org/repositories/Application:/Geo/openSUSE_11.3/
> > > http://download.opensuse.org/repositories/science/openSUSE_11.3/
> > >
> > > I installed:
> > >
> > > qgis (version 1.5.1.5.4)
> > > R-base (version 2.11.1-1.14)
> > > R-base-devel
> > > Rkward (to use R through a GUI)
> > >
> > > Before to add the homerange plugin in Qgis, it is stated to add some
> > > dependencies for R (adehabitat, rgdal, shapefiles, gpclib). But it is
> > > not that simple to get them; they have their own several dependencies
> > > and some need to be compiled with C++, while others with Fortran. So
> > > we need also those compilers. In simple, I went through each one and
> > > develop a the list of packages needed to be installed to get the R
> > > dependencies satisfied. Therefore, using Yast2 again, these are the
> > > next needed rpm packages :
> > >
> > > make, gcc, gcc-c++, gcc-fortran, tk-devel, xorg-x11-devel
> > > gdal (needed to add under R, the package rgdal)
> > > python-gdal
> > > libgdal1-devel
> > >
> > > python-rpy2 (2.0.6-7.1) this is to get Rpy2 (but is not found by
> > > QGIS)
> > >
> > > Yast2 installed them and their own dependencies as well. Without
> > > adding the previous packages, under R, the dependencies were never
> > > satisfied despite being downloaded, because were not able to be
> > > compiled and installed.
> > >
> > > Then, after having these packaged installed, as ROOT I used RKward
> > > (the R GUI in KDE linux), to add the packages for R. The used
> > > repository was UCLA . The selected R packages to be selected and
> > > installed were:
> > >
> > > rgdal
> > > shapefile
> > > gpclib
> > > adehabitat
> > >
> > > The installation went great with no problem, automatically getting the
> > > dependencies for each of these packages.
> > >
> > > Then, having R done, I opened Qgis to install the Homerange plugin.
> > >
> > > However, every time I open qgis, I get the error of not being able to
> > > load Rpy2, despite the package that provides it was installed.
> > >
> > > Any hint?
> >
> > Yes, one: is QGIS using the same Python where you installed rpy2?
> > You can check that opening python from a terminal, and type:
> >
> > import sys
> > print sys.version
> >
> > then open QGIS, open the Python console (Plugins > Python console) and
> > type the same commands. If the versions are different, it probably means
> > that QGIS has installed its own Python and that you installed rpy2 on
> > the system's one.
> > Any extra hint from Suse users is welcome :)
> >
> > in the QGIS Python console you can also type:
> >
> > import rpy2 as rpy2
> > import rpy2.robjects as ro
> >
> > and report the Python errors - they are more informative than
> > HomeRange_plugin's.
> >
> > hope this helps,
> > anne
> >
More information about the AniMov
mailing list