[R-sig-Debian] rgdal cannot load shared object

Sebastian P. Luque spluque at gmail.com
Thu Aug 25 16:20:14 CEST 2011


On Thu, 25 Aug 2011 11:15:35 +0200,
Rainer M Krug <r.m.krug at gmail.com> wrote:

> On Wed, Aug 24, 2011 at 5:40 PM, Sebastian P. Luque <spluque at gmail.com>wrote:
>> On Wed, 24 Aug 2011 13:30:37 +0200,
>> Roger Bivand <Roger.Bivand at nhh.no> wrote:

>> > On Tue, 23 Aug 2011, Sebastian P. Luque wrote:
>> >> Hello,

>> >> I'm on a Debian sid system, and after a an upgrade of packages >>
>> ('apt-get upgrade') over the weekend, loading rgdal no longer works:

>> > Debian GIS packages are not reliable. The CRAN debian checks failed
>> in > mid-May with a libgdal upgrade, which got resolved after some
>> time > without clear diagnoses - possibly an upstream dependency
>> issue in > something one libgdal build depended on and another
>> not. General > advice with Debian and derivative systems is to
>> install GDAL from > source if possible to avoid this kind of
>> issue. The feel of the error > message is that some components have
>> been built with different C++ > versions, so your question about
>> re-installing rgdal for upgraded GDAL > binaries has two answers, no
>> if C++ and its libraries have not > changed, yes if they have.

>> > I haven't seen a reply on R-sig-debian, so please report back there
>> > too if you make progress.

>> Thanks Roger; I tried reinstalling rgdal, and got some more clues
>> following install.packages("rgdal") (relevant lines only):

>> /usr/lib/libgdal1.7.0.so: undefined reference to
>> `libdap::AISConnect::AISConnect(std::basic_string<char,
>> std::char_traits<char>, std::allocator<char> > const&)' collect2: ld
>> returned 1 exit status ./configure: line 3366: ./proj_conf_test: No
>> such file or directory PROJ.4 Version 4.7 or earlier
>> /usr/lib/libgdal1.7.0.so: undefined reference to
>> `libdap::AISConnect::AISConnect(std::basic_string<char,
>> std::char_traits<char>, std::allocator<char> > const&)' collect2: ld
>> returned 1 exit status ./configure: line 3409: ./proj_conf_test: No
>> such file or directory /usr/lib/libgdal1.7.0.so: undefined reference
>> to `libdap::AISConnect::AISConnect(std::basic_string<char,
>> std::char_traits<char>, std::allocator<char> > const&)' collect2: ld
>> returned 1 exit status ./configure: line 3459: ./proj_conf_test: No
>> such file or directory

>> and:

>> /usr/lib/libgdal1.7.0.so: undefined reference to
>> `libdap::AISConnect::AISConnect(std::basic_string<char,
>> std::char_traits<char>, std::allocator<char> > const&)' collect2: ld
>> returned 1 exit status ./configure: line 3366: ./proj_conf_test: No
>> such file or directory PROJ.4 Version 4.7 or earlier
>> /usr/lib/libgdal1.7.0.so: undefined reference to
>> `libdap::AISConnect::AISConnect(std::basic_string<char,
>> std::char_traits<char>, std::allocator<char> > const&)' collect2: ld
>> returned 1 exit status ./configure: line 3409: ./proj_conf_test: No
>> such file or directory /usr/lib/libgdal1.7.0.so: undefined reference
>> to `libdap::AISConnect::AISConnect(std::basic_string<char,
>> std::char_traits<char>, std::allocator<char> > const&)' collect2: ld
>> returned 1 exit status ./configure: line 3459: ./proj_conf_test: No
>> such file or directory

>> in addition to the error I previously reported.  So AFAICS, it seems
>> like a problem with Debian sid's libgdal1-1.7.0 or one of the libdap
>> packages, given the "undefined reference to
>> 'libdap::AISConnect::AISConnect(std::basic_string<char,
>> std::char_traits<char>, std::allocator<char> > const&)' line.


> In my experience, proj usually points to something related to proj4 -
> are you sure that proj4 os properly installed, including dev files
> (not sure if needed, but likely)?

I think the problem comes from this bug:

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=638294

because when I found this conflict, I went ahead and used "dpkg -i
--force-overwrite ..", which may have botched my libdap.  It looks like
we will soon have a new version.

Cheers,

-- 
Seb



More information about the R-SIG-Debian mailing list