Skip to content

rgdal cannot load shared object

4 messages · Sébastien Bihorel, Rainer M Krug

#
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:

---<--------------------cut here---------------start------------------->---
R> library(rgdal)
Loading required package: sp
Error in dyn.load(file, DLLpath = DLLpath, ...) : 
  unable to load shared object '/usr/local/lib/R/site-library/rgdal/libs/rgdal.so':
  /usr/lib/libgdal1.7.0.so.1: undefined symbol: _ZN6libdap10AISConnectC1ERKSs
Error: package/namespace load failed for 'rgdal'
R> sessionInfo()
R version 2.13.1 (2011-07-08)
Platform: x86_64-pc-linux-gnu (64-bit)

locale:
 [1] LC_CTYPE=en_CA.UTF-8       LC_NUMERIC=C               LC_TIME=en_CA.UTF-8        LC_COLLATE=en_CA.UTF-8     LC_MONETARY=C              LC_MESSAGES=en_CA.UTF-8   
 [7] LC_PAPER=en_CA.UTF-8       LC_NAME=C                  LC_ADDRESS=C               LC_TELEPHONE=C             LC_MEASUREMENT=en_CA.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] sp_0.9-84           slmisc_0.8.9        latticeExtra_0.6-18 RColorBrewer_1.0-5  lattice_0.19-31    

loaded via a namespace (and not attached):
[1] grid_2.13.1
---<--------------------cut here---------------end--------------------->---

For libgdal libraries the system has:

---<--------------------cut here---------------start------------------->---
$ apt-show-versions -r -p 'libgdal.+'
libgdal-doc/sid uptodate 1.7.3-5
libgdal1-1.6.0/squeeze uptodate 1.6.3-4+b1
libgdal1-1.7.0/sid uptodate 1.7.3-5
libgdal1-dev/sid uptodate 1.7.3-5
---<--------------------cut here---------------end--------------------->---

I could remove the 1.6.0 version, but some packages still require it.

Is this a transient problem in sid or something else?  Thanks.


Cheers,
2 days later
#
On Wed, 24 Aug 2011 13:30:37 +0200,
Roger Bivand <Roger.Bivand at nhh.no> wrote:

            
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.

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

            
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,