一步一步教你自己来编译 wxsqlite3 静态库

wxsqlite3 相比普通的 sqlite3 的好处就是可以对数据库进行加密,但这个 wxsqlite3 的编译过程真的是非常曲折,我自己也是折腾了几个小时才真正编译出来一个可用的 wxsqlite3 的静态库文件。那么接下来废话不多说开始准备环境。

安装 wxWidgets

访问 https://www.wxwidgets.org/,在首页点击 Download now 按钮。

下载 Windows Installer 安装包

下载完成后安装我就不多说了,默认下一步下一步就可以了,我这里安装到默认的 C 盘:

接下来打开 C:\wxWidgets-3.1.1\build\msw 目录,根据你的 VS 版本打开对应的解决方案,我使用的是 VS2013,所以打开 wx_vc12.sln。点击生成下面的皮生成菜单,全选所有点击生成:

这个过程主要是会在 C:\wxWidgets-3.1.1\lib\vc_lib\mswu\wx 生成一个 setup.h 和其他依赖文件,这个文件在我们后面编译 wxsqlite3 的时候会用到。

编译 wxsqlite3 代码

首先命令行执行如下命令,将最新的 wxqlite3 的代码 clone 下来。

git clone https://github.com/utelle/wxsqlite3.git

打开 wxsqlite3 目录下的 build31 文件夹,一样根据你本地 VS 的版本选择对应的解决方案文件(.sln)打开。我依然使用的是 VS2013 的解决方案。

接下来要配置一下项目,右键 wxsqlite3 项目->属性,在打开的属性页中,选择所有配置和所有平台:

在 VC目录->包含目录 中,添加 C:\wxWidgets-3.1.1\include\msvc 文件夹和 C:\wxWidgets-3.1.1\include 文件夹

在 通用属性->引用 中,将 libsqlite3 设置为依赖库:

接下来,将 libsqlite3 项目和 wxsqlite3 项目的所有 Debug 版本的运行库修改为 /MTD,将所有 Release 版本的运行库都修改为 /MT,注意如果你需要用 64 位的 wxsqlite3 的话,Win64 的属性也要修改。

接下来还是一样点击 生成->批生成 菜单,选择你要生成的类型,我需要 32/64 位的 Debug 版本和 32/64 的 Release 版本,所以我只选择了 Debug、Debug Win64、Release、Release Win64 四个版本。然后点击生成。(图片由于上面看不到,就没圈起来)

不出意外的话,将会生成 wxsqlite3 的静态库到上级目录下的 lib\vc120_lib 目录下。

这里大家看到只有两个,是因为 Debug Win64 和 Debug 生成的路径和文件名是一样的,被覆盖了,Release 也是一样,你修改一下生成后的目录或者文件名就可以了。这样生成出来的 wxsqlite3.lib 文件你就可以引入到你自己的项目中使用了。使用时需要包含 wxsqlite3\include 目录下的头文件。

总结

接下来总结一下步骤,防止第一次编译的同学神经错乱。。。

  • 安装 wxWidgets
  • 批量生成所有项目(主要为了生成 setup.h 文件)
  • 克隆 wxsqlite3 项目并根据自己的需要打开对应解决方案
  • 配置两个依赖目录
  • 配置项目的运行库(主要为了与你 exe 的运行库匹配一致)
  • 设置 libsqlite3 为依赖项
  • 批量根据自己的需要生成静态库

Post Views: 6 相关

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏GreenLeaves

六、CLR下的托管代码应用程序与非托管代码程序之间的性能对比

1、托管程序二次编译的问题,以及微软做的优化 五、CLR加载程序集代码时,JIT编译器对性能的产生的影响中介绍了CLR下托管应用程序的二次编译对性能产生的影响....

2574
来自专栏拂晓风起

CruiseControl 安装 配置 教程 实例 搭建服务器 (CruiseControl + git/svn)

1153
来自专栏运维小白

8.1 shell介绍

shell介绍 shell是一个命令解释器,提供用户和机器之间的交互 支持特定语法,比如逻辑判断、循环 每个用户都可以有自己特定的shell CentOS7默认...

18810
来自专栏海天一树

小朋友学Python Web(1):建立第一个Web项目

一、 安装PyCharm专业版 注意不要安装社区版,因为社区版没有集成Django框架,得自己安装配置,过程比较繁琐

1361
来自专栏林德熙的博客

调试 ms 源代码

首先需要下载 dotPeek ,可以到官网下载 dotPeek: Free .NET Decompiler & Assembly Browser by JetB...

1161
来自专栏极客慕白的成长之路

MySQL社区版安装图文教程

在MySQL官网下载社区版mysql-installer-community,此版本为免费的。

1073
来自专栏bboysoul

centos 搭建nfs服务器

今天就是想做一个nfs服务,然后可以把zstack硬盘里面的一部分空间可以当做局域网里面的共享存储来使用而已,共享目录是/data,操作其实挺简单的。

1314
来自专栏蓝天

安装Android SDK Manager的“Failed to fetch refused”问题解决方法

安装Android SDK Manager的“Failed to fetch refused”问题解决方法

963
来自专栏云计算教程系列

如何在Ubuntu 14.04上部署Clojure Web应用程序

人们对函数式编程的兴趣不断增加,更具体地说,是在Clojure中对Web进行编程。许多关于如何构建基本应用程序的教程经常忽略部署细节。本文将向您展示如何将Clo...

1170
来自专栏zhangdd.com

redis官方集群安装升级ruby2.2.7版本

配置redis官方集群,开始使用yum 默认安装ruby到gem install  redis时报错,提示需要ruby>2.2.0

862

扫码关注云+社区