分类: 数据库开发技术
2012-02-24 19:31:41
在vs2005命令行中使用以下命令编译sqlite3.dll执行第二条命令时,发生错误:
- cl sqlite3.c /c
- link sqlite3.obj /dll /def:sqlite3.def /implib:sqlite3.lib
在找到了相关的资料。
- sqlite3.def : error LNK2001: unresolved external symbol sqlite3_column_database_name
- sqlite3.def : error LNK2001: unresolved external symbol sqlite3_column_database_name16
- sqlite3.def : error LNK2001: unresolved external symbol sqlite3_column_origin_name
- sqlite3.def : error LNK2001: unresolved external symbol sqlite3_column_origin_name16
- sqlite3.def : error LNK2001: unresolved external symbol sqlite3_column_table_name
- sqlite3.def : error LNK2001: unresolved external symbol sqlite3_column_table_name16
- sqlite3.def : error LNK2001: unresolved external symbol sqlite3_rtree_geometry_callback
- sqlite3.def : error LNK2001: unresolved external symbol sqlite3_table_column_metadata
- sqlite3.lib : fatal error LNK1120: 8 unresolved externals
在sqlite3.c中添加两个宏定义保存后,重新执行命令
- #define SQLITE_ENABLE_RTREE
- #define SQLITE_ENABLE_COLUMN_METADATA
即可编译成功
- cl sqlite3.c /c
- link sqlite3.obj /dll /def:sqlite3.def /implib:sqlite3.lib