vc6.0+wxSqlite3编译成静态库总结
来源:互联网 发布:python api文档在哪有 编辑:程序博客网 时间:2024/04/27 13:17
1. 下载wxSqlite3-2.1.3.zip后,解压到wxsqlite3-1.9.9
http://sourceforge.net/projects/wxcode/files/Components/
2.解压到e:\wxsqlite3,wxSqlite3中有sqlite3\secure\src\codec-c子目录,该目录下的文件是包括加密功能的sqlite3源文件,版本号是3.7.7.1
3.用vc6.0创建一个空的win32 library工程sqlite3Encrypt,将sqlite3\secure\src\codec-c目录下的sqlite3secure.c加入到工程中,因为sqlite3secure.c中已经包括了sqlite3.c(该文件中包括了所有sqlite3功能的实现)。
4.加入预处理开关:SQLITE3ENCRYPT_EXPORTS,SQLITE_ENABLE_FTS3,SQLITE_ENABLE_FTS3_PARENTHESIS,SQLITE_ENABLE_RTREE,SQLITE_SECURE_DELETE,SQLITE_SOUNDEX,SQLITE_ENABLE_COLUMN_METADATA,SQLITE_HAS_CODEC,CODEC_TYPE=CODEC_TYPE_AES128,SQLITE_CORE,THREADSAFE=1
5.改变编译选项,c/c++->use runtime library->MultiThread(/MT,release版),MultiThread DLL(/MTd,debug版).
6.build生成sqlite3Encrypt.lib.
二、编译连接wxSqlite3
1.由于我使用的wxWidgets是2.9.1版,所以进入e:\wxsqlite3\build29子目录,用vc6.0打开wxsqlite3_vc6.dsw,里面有三个工程文件,一是mimal(wx Widgets控制台程序),二是dbadmin(wxSqlite3数据库的管理工具),三就是wxSqlite3自身的工程文件。
2.设置好环境变量wxwin,使其指向wxWidgets的安装目录,本人的是C:\wxWidgets-2.9.1。因为wxSqlite3要使用wxWidgets库。
3.设置所有三个工程文件的编译选项use runtime libray,debug版为/MTd,release版为/MT.
4.设置wxSqlite3中的预编译选项,debgu版为__WXDEBUG__,_DEBUG,WIN32,_LIB,_UNICODE,__WXMSW__,wxUSE_DYNAMIC_SQLITE3_LOAD=0,WXSQLITE3_HAVE_METADATA=1,WXSQLITE3_HAVE_CODEC=1,WXSQLITE3_HAVE_LOAD_EXTENSION=1,release版为WIN32,_LIB,_UNICODE,__WXMSW__,wxUSE_DYNAMIC_SQLITE3_LOAD=0,WXSQLITE3_HAVE_METADATA=1,WXSQLITE3_HAVE_CODEC=1,WXSQLITE3_HAVE_LOAD_EXTENSION=1。其它两个工程文件保持默认打开时的预编译选项即可。
5.由于我将wxWidgets编译成monthonlic模式,minimal和dbadmin中的静态库依赖需要修改成相应的库。
6.编译debug时,将之前生成的debug版本sqlite3Encrypt.lib改名为sqlite3.lib,并复制到sqlite3\lib目录下,替换掉以前的同名文件(该同名文件是wxSqlite3发行版中自带的动态库导入文件),然后再build.同样,当编译release时,复制release版本的sqlite3Encrypt.lib到sqlite3\lib目录下.
通过minimal.exe和dbadmin.exe我们可以学习wxSqlite3的用法。以后就可以使用wxSqlite3来代替需要数据库引擎的数据库了,比如Access.
- vc6.0+wxSqlite3编译成静态库总结
- Duilib编译成静态库
- Duilib编译成静态库
- 用vc6.0编译wxSqlite3
- 界面库Duilib编译成静态库
- AGG_002 编译成静态链接库
- 将UDT编译成静态LIB库
- (转)将DuiLib编译成静态库
- 将 vlfeat 编译成静态库
- 将nginx编译成静态库
- 编译成.a 文件 静态库
- ffmpeg android ndk 编译成静态库
- 编译成静态的可执行文件。
- 精简VLC并编译成静态库(vs2005)
- jni ndk-build编译成静态库时一闪而过解决办法
- 二维码扫瞄 ZXingWidget 编译成静态库 使用
- 把cocos2dx win32工程编译成静态库
- 把JSONCPP编译成静态库.lib形式
- CMake与跨平台编译
- 搜索引擎的弊端
- 如何用 WinRAR 批量解压文件?
- Struts1.x系列教程(14):动态Form
- JQuery中each()与toggleClass()使用
- vc6.0+wxSqlite3编译成静态库总结
- 小心使用STL中map的[]操作符[转]
- MVN
- Android自带的一些可用于Activity的Theme
- Linux下网站的验证码图片不显示
- Struts1.x系列教程(15):使用DownloadAction类统计文件下载次数
- 信息设计软件+信息图表设计软件介绍
- 开始写博客
- Struts1.x系列教程(16):使用LocaleAction类实现国际化的Web程序