尝试在Linux上安装rgdal软件包的问题

时间:2016-08-09 02:45:26

标签: r linux sqlite ubuntu gdal

我正在尝试安装R(R版本3.2.4修订版)软件包' rgdal'在我的Linux上,Ubuntu 14.04,但是当它试图加载依赖项时,包有困难,特别是sqlite。

错误如下:

checking for gdal.h... yes
checking gdal: linking with --libs only... no
checking gdal: linking with --libs and --dep-libs... no
/usr/lib/libgdal.so: undefined reference to `sqlite3_column_table_name'
collect2: error: ld returned 1 exit status

我按照here的说明更新了GDAL / OGR,因为我认为这可能是问题所在。现在,当我在终端输入gdalinfo或ogrinfo时,会出现类似的错误:

gdalinfo: symbol lookup error: /usr/lib/libgdal.so.1: undefined 
symbol: sqlite3_column_table_name

当我查看我的usr / local / lib时,会出现以下sqlite库:

libsqlite3.a libsqlite3.la libsqlite3.so libsqlite3.so.0   
libsqlite3.so.0.8.6

有趣的是,上周这个套装在R中运行良好,现在已经坏了......

任何帮助表示赞赏!感谢。

-Caitlin

2 个答案:

答案 0 :(得分:1)

当我尝试升级GDAL时偶然发现了此错误。解决方法是ENABLE_COLUMN_METADATA,当我配置sqlite进行安装时

sudo CFLAGS="-DSQLITE_ENABLE_COLUMN_METADATA=1" ./configure

有关更多详细信息,请参见sqlite Compile-time options

答案 1 :(得分:0)

听起来像共享库的问题,在不使用包管理器的情况下在系统中安装/更新任何内容? (我相信它很合适?)

你的系统中的libgdal.so.1是针对某些版本的libsqlite库编译的,现在你更新了其他版本后,已经改变但是libgdal仍然是同一个文件。

我从未使用过Ubuntu,但在Linux中我使用(arch)这是不鼓励部分更新的原因(例如,只更新一个程序)

所以我建议尝试完整的系统更新,或者至少更新sqllite库。