什么是sqlite开发头文件,如何安装?

12 投票
3 回答
18915 浏览
提问于 2025-04-15 14:31

我正在尝试安装pysqlite,但遇到了一些问题。我发现问题很可能是因为缺少sqlite的头文件,所以我需要安装这些文件。

不过,我对这些头文件一点概念都没有(我不知道它们在哪里,是什么作用,以及怎么安装)。

有没有人能帮我解决这个问题呢?

3 个回答

0

在使用pysqlite之前,你需要先编译或构建它。这就需要一些C语言的头文件(*.H),这些文件是sqlite源代码的一部分。

也就是说,sqlite和pysqlite是两个不同的东西。在你尝试构建pysqlite之前,你有没有先安装sqlite?(或者你可能已经安装了,但你是用二进制文件安装的;为了pysqlite的使用,你需要源代码包(或者至少需要它的头文件)。

8

对我来说,这个方法有效(在Redhat/CentOS系统上):

$ sudo yum install sqlite-devel

19

debian/ubuntu:

$ apt-get install libsqlite3-dev # or rpm -i sqlite-devel-something.rpm

我觉得很多解释器在安装时会重新编译它们的小连接库,但要做到这一点,它们需要C语言的头文件(.h文件),除了库文件之外,还需要这些头文件来进行链接。你可能已经有了这个库,因为其他东西可能依赖于它,但你不一定有dev包,这个包可以看作是源代码和二进制文件之间的一个中间状态。

这部分其实很简单,如果你打算使用某个库进行开发,你就需要它的接口头文件。

但我觉得事情变得更复杂了,最开始的时候,人们尝试了全源代码和全二进制的发行版,但全二进制的版本容易出现“依赖地狱”,而全源代码的版本又显得过于复杂。我认为现在有一种有趣的折中方案被采用,那就是半源代码的发行版,程序通过重新编译与扩展库连接的部分来链接已安装的库。这对于解释器来说非常合理,因为大部分系统可以以二进制形式提供,但扩展模块是动态加载并为已安装的系统编译的。我想是这样的。

撰写回答