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

文章讲述了在Ubuntu20.04上启动QGIS时遇到的符号未定义错误,具体为sqlite3_column_table_name。问题根源在于系统安装的sqlite3缺少相应函数。解决方案是访问SQLite官网下载源码,手动添加宏定义并重新编译安装,最终成功解决了问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

给ubuntu20.04缝缝补补又三年的故事

1 问题描述:

启动QGIS时出现:
qgis: symbol lookup error: /usr/lib/libgdal.so.1: undefined symbol: sqlite3_column_table_name
直接将报错信息全部贴至百度,发现并无对应解决办法…

此时,观察报错信息可得知:此报错信息主要是 sqlite3_column_table_name这个问题,因此直接百度
    undefined symbol: sqlite3_column_table_name得到: 解决办法

2 问题发现:

这个问题是因为安装sqlite3的时候没有把sqlite3_column_table_name相关函数编译进来,如果你是使用ubnutu上的apt软件包安装的默认是没有编译这个func的。

3.问题解决步骤

因此直接官网下载:https://www.sqlite.org/download.html

对应压缩包: sqlite-autoconf-3350400.tar.gz
注意不要下载amalgamation版本的这个是源代码不包含makefile
下载完毕:

    解压
 

 tar -xvf sqlite-autoconf-3350400.tar.gz


    进入目录

    cd sqlite-autoconf-3350400


    编辑

 gedit sqlite.c


    在宏定义那一行加上:

#define SQLITE_ENABLE_COLUMN_METADATA 1   

重新编译

./configure
make
sudo make uninstall
sudo make install

 

再次打开qgis

qgis
成功

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值