sqlite3 (1): windows下编译sqlite3
数据库,简单记录.
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// // Being -- 转载:http://www.cnblogs.com/xFreedom/archive/2012/04/04/2432386.html 2、编译生成Win32平台下的动态链接库(*.dll)。 (1)创建一个Win32 Project,选择一个空的Dll工程,工程名为“sqlite_win32_dll”;
(2)将sqlite-amalgamation-3071100.zip解压后的sqlite3.c、sqlite3.h、sqlite3ext.h,将sqlite-dll-win32-x86-3071100.zip解压后的sqlite3.def模块定义文件一起添加到工程中,在Preprocessor中加入SQLITE_ENABLE_COLUMN_METADATA,编译通过即可生成dll,但此时只生成了sqlite_win32_dll.dll文件,没有生成对应的引入库(sqlite_win32_dll.lib)文件,具体方法是如下: 修改sqlite3.c文件中的SQLITE_API宏定义(当前版本在sqlite3.c的第26行),将 # define SQLITE_API修改成 # define SQLITE_API __declspec(dllexport) 重新编译即可生成sqlite_win32_dll.dll和sqlite_win32_dll.lib。 或者直接把sqlite3.def添加在Linker--->Input--->Module Definition File中也可以搞定(推荐)。 // End -- 转载:http://www.cnblogs.com/xFreedom/archive/2012/04/04/2432386.html //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////他其中说道了一个关键点: 使sqlite3导出函数有2个办法: 1. # define SQLITE_API __declspec(dllexport) 2.直接把sqlite3.def添加在Linker--->Input--->Module Definition File中也可以搞
我尝试了这2个办法,结果办法1可以成功,办法2报错: 1>sqlite3.def : error LNK2001: unresolved external symbol sqlite3_rtree_geometry_callback
先记录下来,暂时没有时间查询,等有时间再补上。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |