sqlite3.dll动态链接库,允许程序共享执行特殊任务所必需的代码和其他资源。
动态的sqlite3.lib相当于一个.h文件,是对实现部分(.dll文件)的导出部分的声明。编译后只是将导出声明部分编译到宿主程序中,其生成的sqlite3.exe在运行时需要相应的.dll文件支持。
静态的sqlite3.lib将导出声明和实现都放在.lib中,编译后所有代码都嵌入到宿主程序,其生成的sqlite3.exe可直接运行。
以编译生成x64位的为例。下载文件:https://www.sqlite.org/download.html
sqlite-amalgamation-3280000.zip (包含文件:shell.c, sqlite3.c, sqlite3.h, sqlite3ext.h),
sqlite-dll-win64-x64-3280000.zip (包含文件:sqlite3.def, sqlite3.dll)
需要使用VS2017的lib.exe,在D:\Program Files\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.16.27023\bin\Hostx64\x64\目录下,
复制整个文件夹到新的目录(如:桌面),
方案一:编译生成动态sqlite3.lib
sqlite3.def = lib.exe => dynamic sqlite3.lib = solution => SQLite3-dynamic_lib.exe + sqlite3.dll
1. 将sqlite3.def复制到新的目录下(如:C:\Users\Snow-Angel\Desktop\x64),
进入cmd输入:LIB /DEF:sqlite3.def /MACHINE:X64,生成需要的动态sqlite3.lib文件。
2. 新建空项目测试:SQLite3-dynamic_lib,
添加sqlite3.h, sqlite3.dll和生成的sqlite3.lib到项目目录下
3. 包含头文件:#include “sqlite3.h”