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
相关推荐
项目申报小狂人5 分钟前
中科院1区SCI-哲学命题优化算法Philosophical proposition optimizer-附Matlab免费代码
linux·算法·matlab
济6176 分钟前
linux 系统移植(第二十期)---- BusyBox构建根文件系统---- Ubuntu20.04
linux·嵌入式硬件
开开心心就好18 分钟前
免费抽奖工具支持批量导入+自定义主题
linux·运维·服务器·macos·pdf·phpstorm·1024程序员节
名誉寒冰23 分钟前
Linux 网络内核:tcp_transmit_skb 与 udp_sendmsg 解析
linux·网络·tcp/ip
John Song24 分钟前
miniconda是否初始化?
linux·运维·服务器·python
草草_32 分钟前
【内核驱动基础】内核模块的两种编译方式(in-tree vs out-of-tree)
linux·驱动开发·内核
了一梨1 小时前
SQLite3学习笔记2:SQL 基础语法
笔记·学习·sqlite
j_xxx404_1 小时前
Linux:进程
linux·运维·服务器
小虾爬滑丫爬1 小时前
Debian服务器上重启服务
linux·服务重启
wheeldown1 小时前
【Linux TCP Socket 实战】 从单客户端到多客户端回声服务器
linux·服务器·tcp/ip