Linux下从sqlite3源码编译出sqlite3库及相关可执行程序

目录

1. 下载sqlite3源码并编译

2. 下载Tcl库并编译

3. 再次编译sqlite源码


1. 下载sqlite3源码并编译

打开SQLite Download Page,滚动到页面的下面,找到源码量最大的那个(其它的估计也行,但源码最大的本人感觉功能最全,截至2024年1月5号,源码最大的为13.42MiB),即单击下图红色链接下载源码:

执行如下命令解压:

unzip sqlite-src-3440200.zip

 执行如下命令,创建构建目录:

cd sqlite-src-3440200
mkdir build

执行如下命令,编译: 

cd build
../configure
make -j8

如果报如下错误,则转到第2节进行操作: 

sqlite-src-3440200/build/../tool/cktclsh.sh: tclsh: not found
ERROR: This makefile target requires tclsh 8.4 or later.
Makefile:773: recipe for target 'has_tclsh84' failed
make: *** [has_tclsh84] Error 1

2. 下载Tcl库并编译

      打开Download Tcl/Tk Sources页面,点击如下红色框所示链接下载(本人下载的是zip格式的,你也可以选择其它格式的文件)

执行如下命令解压:

unzip tcl8613-src.zip 

执行如下命令,创建构建目录:

cd tcl8.6.13
mkdir build

执行如下命令,编译、安装:  

cd build
../unix/configure
make -j8
sudo make  install

默认安装在:

/usr/local/lib

执行如下命令,设置tcl库的搜索目录:

sudo vi /etc/profile

在文件末尾加入如下库的搜索目录:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib

执行如下命令,以使库的搜索目录立刻在本终端有效:

source /etc/profile

或重启系统(对所有终端有效)

3. 再次编译sqlite源码

     回到1节再次执行如下命令编译、安装:

make -j8

注意,不需要执行如下的安装命令:

sudo make install

执行完make,默认就安装到/usr/local/lib目录了,如下:

在build目录下生成了sqlite3可执行程序,如下:

执行如下命令,可以看看sqlite3的用法:

./sqlite3  -help

 结果如下:

现在可以用sqlite3这个可执行文件来 创建数据库、建表等操作了。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/295291.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Java集合框架深度解析-ArrayList

Java的集合框架提供了一组实现常用数据结构的类和接口。理解集合框架对于Java程序员来说至关重要,因为它们在日常编程中广泛应用。 为什么需要集合框架? 在编程中,我们经常需要存储和操作一组对象。集合框架提供了用于表示和操作对象组的通…

需方管理运维运营服务的心得

在确保供应商提供的运营维护服务达到需方质量标准,并保障供应商具备相应的服务条件与能力方面,需方必须采纳一整套综合性的管理措施。这包括但不限于方法论、技术工具、制度化流程、以及完备的文档记录等。以下是一份精炼的方案,涉及至关重要…

Dockerfile - 工作流程、构建镜像、文件语法

目录 一、Dockerfile 1.1、简介 1.2、Dockerfile 构建镜像的流程 1.3、Dockerfile 文件语法 1.3.1、注意事项 1.3.2、FROM 1.3.3、MAINTAINER(官方已废弃) 1.3.4、RUN 1.3.5、EXPOSE 1.3.6、WORKDIR 1.3.7、ADD 和 COPY 1.3.8、ENV 1.3.9、…

详解bookkeeper AutoRecovery机制

引言小故事 张三在一家小型互联网公司上班,由于公司实行的996,因此经常有同事“不辞而别”,为了工作的正常推进,团队内达成了某种默契,这种默契就是通过某个规则来选出一个同事,这个同事除了工作之余还有额…

【排序算法总结】

目录 1. 稳点与非稳定排序2. 冒泡排序3. 简单选择排序4. 直接插入排序5. 快排6. 堆排7. 归并 1. 稳点与非稳定排序 不稳定的:快排、堆排、选择原地排序:快排也是非原地排序:归并 和三个线性时间排序:桶排序 ,计数&…

前缀和算法模板

一维前缀和 算法用途:快速求出数组中某一连续区间的和 一维前缀和算法模板 1、预处理出一个 dp 数组 要求原数组存储在 n 1 的空间大小中,其中后 n 个空间存数据。 dp数组,数组开 n 1个空间,dp[i] 表示 [ 1, i ] 区间内所有…

从Spring Cloud Alibaba开始聊架构

作为SpringCloudAlibaba微服务架构实战派上下册和RocketMQ消息中间件实战派上下册的作者胡弦。 另外我的新书RocketMQ消息中间件实战派上下册,在京东已经上架啦,目前都是5折,非常的实惠。 https://item.jd.com/14337086.htmlhttps://item.jd…

【UnityShader入门精要学习笔记】(3)章节答疑

本系列为作者学习UnityShader入门精要而作的笔记,内容将包括: 书本中句子照抄 个人批注项目源码一堆新手会犯的错误潜在的太监断更,有始无终 总之适用于同样开始学习Shader的同学们进行有取舍的参考。 文章目录 复习(阶段性总结…

NLP one-hot编码

🍨 本文为[🔗365天深度学习训练营学习记录博客\n🍦 参考文章:365天深度学习训练营\n🍖 原作者:[K同学啊 | 接辅导、项目定制]\n🚀 文章来源:[K同学的学习圈子](https://www.yuque.co…

实战干货:用 Python 批量下载百度图片!

为了做一个图像分类的小项目,需要制作自己的数据集。要想制作数据集,就得从网上下载大量的图片,再统一处理。 这时,一张张的保存下载,就显得很繁琐。那么,有没有一种方法可以把搜索到的图片直接下载到本地电…

CSP CCF 201412-2 Z字形扫描 C++满分题解

解题思路&#xff1a; 1.将矩阵分成左上和右下两个部分来看 2.每一个部分都是按着斜线输出 3.同一根斜线上坐标的xy相同&#xff0c;不同线上坐标的xy为公差为1的等差数列 4.左边线上坐标的xy依次变大&#xff0c;右边依次变小 #include<iostream> using namespace s…

1月5日,每日信息差

第一、通用汽车2023年在华销量约210万辆&#xff0c;其中凯迪拉克品牌销量逾18.3万辆&#xff0c;别克品牌销量超51.7万辆&#xff0c;雪佛兰品牌销量约16.9万辆&#xff0c;上汽通用五菱旗下品牌合计销量逾120万辆 第二、无锡全面施行经常居住地登记户口制度。根据无锡户籍新…

VMWare安装Ubuntu

1.下载地址&#xff1a;https://mirrors.tuna.tsinghua.edu.cn/ubuntu-releases/22.04/ 此处记录一些重要的截图&#xff0c;主要是按照史上最全最新Ubuntu20.04安装教程&#xff08;图文&#xff09;进行 安装完成之后&#xff0c;进行清华源配置&#xff0c;参考&#xff1…

VS2017 CMake编译Opencv

先下载opencv4.2.0源码以及opencv_contrib-4.2.0 地址链接&#xff1a;https://pan.baidu.com/s/1AgFsiH4uMqTRJftNXAqmTw?pwd3663 提取码&#xff1a;3663 先建立一个opencv_debug和opencv_release文件夹这两个都是为了后续存放编译好的debug版本和release版本opencv的&#…

IP代理测试:Ping测试如何做?

您在访问互联网时是否遇到过持续滞后或花费很长时间等待网站加载的情况&#xff1f;为了避免这种情况&#xff0c;您可以测试 ping 以查看连接速度。如果您使用代理&#xff0c;此 ping 测试还会显示代理服务器的响应速度。 ping 测试是一个很有价值的工具&#xff0c;可以帮助…

HarmonyOS 组件通用属性之位置设置

本文 我们来说 通用属性中的位置设置 主要是针对组件的对齐方式 布局方向 显示位置 做过WEB开发的 对流式布局应该都不陌生 就是 一行放内容 不够放就换行 我们可以先这样写 Entry Component struct Index {build() {Row() {Column() {Stack(){Text("你好")Text(&…

科锐16位汇编学习笔记 02 分段,机器码和寻址

分段 问题1 8086是16位cpu&#xff0c;最多可以访问&#xff08;寻址&#xff09;多大内存&#xff1f; - 运算器一次最多处理16位的数据。 - 地址寄存器的最大宽度为16位。 - 访问的最大内存为&#xff1a;216 64K 即 0000 - FF…

毛戈平公司上市终止:产品依赖代工,研发投入低,毛戈平夫妇套现

时隔一年&#xff0c;毛戈平化妆品股份有限公司&#xff08;下称“毛戈平”或“毛戈平公司”&#xff09;在A股的上市之旅再次宣告终止。 据贝多财经了解&#xff0c;毛戈平公司最早于2016年12月预披露招股书&#xff0c;准备在上海证券交易所上市&#xff0c;原计划募资5.12亿…

buildroot 编译错误【001】

在GitHub 查找错误,也挺好用 解决办法 fakeroot 错误 还是用docker构建编译环境安全,镜像解压脚本&#xff0c;写错了位置&#xff0c;生产环境被覆盖&#xff0c;唉 … …