前言
QtCipherSqlitePlugin是一种加密SQLite的Qt插件(github.com/devbean/QtC…) ,功能强大、使用方便。但由于目前缺少CMake方式构建工程,导致该插件的应用受到了限制,因此提供以CMake的方式构建工程。
一 编译QtCipherSqlitePlugin遇到的问题
1、高版本Qt(如qt6.5.2)出现。如下图,看起来是插件定义的QVector与qt内部定义的重定义了。
2、高版本Qt(如qt6.5.2)出现。如下图,原因是高版本Qt中Q_DECLARE_METATYPE宏中多了QtPrivate::checkTypeIsSuitableForMetaType,如果找不到类型的完整定义,则会报错。sqlite3与sqlite3_stmt应该都是定义在.c文件中的。屏蔽了功能可能有问题,但目前测试用例能过。
二 CMake构建QtCipherSqlitePlugin方法
CMake构建QtCipherSqlitePlugin方法见:github.com/1995zyl/QtC… 。readme.md文件有相关说明。win10 x64 qt6.5.2以及MacOS arm64 qt5.12,自测可以编译成功及运行测试成功,Linux没有测试。demo工程中为啥必须要Debug,不明白,屏蔽了。运行结果如下: