数据库,简单记录.
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// Being -- 转载:http://www.cnblogs.com/xFreedom/archive/2012/04/04/2432386.html
(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 __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
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////他其中说道了一个关键点:
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
1>sqlite3.def : error LNK2001: unresolved external symbol sqlite3_rtree_query_callback
先记录下来,暂时没有时间查询,等有时间再补上。
原文链接:https://www.f2er.com/sqlite/200301.html