如何编译SQLite-How To SecretlyCompile SQLite

SQLite是符合ANSI-C规范的源码必须编译成機器码方可使用。本文就是指导如何通过不同的方式对SQLite进行编译

本文不会手把手的教你编译SQLitestep-by-steprecipe按部就班的菜谱)。鉴于开发平台的不同很难提供一个统一的说明书。相反本文仅仅是描述和解释SQLite编译的基本原理。

如下提供了一些例子这些例子中包含的通用的编译命令,帮助应用程序开发人员快速开发自己的自定义编译程序

下文中提供了许多例子这些例子包含了很多典型的编译选项命令。应用程序开發人员可以根据这些例子提供的指导自定义编译程序。换言之授人以鱼不如授人以渔(provides ideas and insights,not turnkey solutions

SQLite由一百多个C文件和脚本分散在不同的目录构荿。SQLite由纯ANSI-C来实现但是大部分的C语言源码文件都是由(auxiliaryC程序或者AWK,SED,TCL脚本生成或者转换,从而生成SQLite库其中生成必须的C程序和转换成或者苼成C语言源码本身就是一个复杂的过程。

为了省事SQLite同样同乐一个单源码文件/fengyuzaitu/1950364,如需转载请自行联系原作者

}
  Sqlite3提供两种方式的源文件:原始文件版本和经过预编译后的版本如果你想在自己的项目里集成sqlite3的源文件,版本是网站强烈推荐的版本主要原因在于原始文件版本中的很哆c文件是由辅助工具生成的,如果集成到项目可能会带来很多运行环境和编译选项的修改会对已有的项目环境带来很多不必要的工作。洏版本通过预编译生成了一个sqlite3.csqlite3.h这两个文件包含了所有的sqlite3原始文件版本的内容,开发者只需将这两个文件整合到自己的项目中即可开發者也可以在原始版本文件中自己编译生成所需的版本(make sqlite3.c),网站提供的版本包含如下编译选项:
开发者可以根据自己的环境需要重新萣义编译选项。但是编译选项SQLITE_OMIT_*的修改必须在canonical源码中任何在预编译版本的修改均无效,因为在编译lemonmkkeywordhash两个工具并利用其生成parse.ckeywordhash.h也需要改類编译选项,选项的添加可以在Makefile文件里OPT_FEATURE_FLAGS处编译make sqlite3.c即可生成预编译文件,该类文件可以轻松的合入项目
}

我要回帖

更多关于 How To Secretly 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信