Linux上编译sqlite3库出现undefined reference to `sqlite3_column_table_name‘

作者:朱金灿

来源:clever101的专栏
为什么大多数人学不会人工智能编程?>>>

在Ubuntu 18上编译sqlite3库后在运行程序时出现undefined reference to `sqlite3_column_table_name'的错误。网上的说法是说缺少SQLITE_ENABLE_COLUMN_METADATA的宏定义,解决办法是在sqlite3.c增加一行代码:

cpp 复制代码
#define SQLITE_ENABLE_COLUMN_METADATA 1

这个解决办法其实不好,更好的办法是在运行configure命令时增加SQLITE_ENABLE_COLUMN_METADATA的宏定义,具体命令如下

shell 复制代码
# CFLAGS参数是指定编译c文件的参数,其中-DSQLITE_ENABLE_COLUMN_METADATA为宏定义
# --prefix=/home/lx/ThirdPartyLib/sqlite202310241106为指定编译输出位置
./configure CFLAGS='-g -O2 -DSQLITE_ENABLE_COLUMN_METADATA' --prefix=/home/lx/ThirdPartyLib/sqlite202310241106
相关推荐
Konwledging16 小时前
显卡GOP
linux
blueSatchel16 小时前
v4l2读取图像样例
linux
xlp666hub16 小时前
从零点亮 RK3568 的 LED:设备树,平台总线,现代gpio子系统全解析(附完整代码)
linux·面试
哼?~17 小时前
Linux线程基本概念
linux
姓王名礼17 小时前
一份 Windows/macOS/Linux 完整安装 + 运行 + 对接 WebUI 的步骤
linux·windows·macos
idolao18 小时前
CentOS 7 安装 nginx-1.3.15.tar.gz 详细步骤(从源码编译到启动配置)
linux·运维·数据库
yaoxin52112318 小时前
358. Java IO API - 使用 relativize() 创建路径之间的相对关系
java·linux·python
亚林瓜子19 小时前
linux账号强制密码过期导致私钥文件登录异常问题——(current) UNIX password:
linux·运维·服务器·ssh·aws·ec2·chage
Code_LT19 小时前
【AIGC】Claude Code Rules配置
linux·ubuntu·aigc
LXY_BUAA19 小时前
《嵌入式操作系统》_驱动框架_20260318
linux·运维·服务器