最新消息:
我修复了QuaZip问题
QtCrypto现在可以在桌面平台(使用AES 256)上运行。但是如何为Symbian构建lib?
问题:
如何构建QtCryptoand QuaZip的.lib文件? (详情如下)
如何在新的QT移动应用程序项目(QT Create 2.3)中使用库?
背景:
我正在使用Qt Creator制作适用于诺基亚Symbian设备的UnZip Manager应用程序。
我需要使用QtCrypto(解密文件)和QuaZip(解压缩ePub zip文件)
我不能在我的项目中使用它们。
平台:
基于Qt 4.7.4的Qt Creator 2.3.0
视窗7 32位
部署到诺基亚N8
我尝试的步骤:
A)建立库
下载并打开QtCtypto和QuaZip项目
QtCtypto:http://delta.affinix.com/qca/
QuaZip:http://quazip.sourceforge.net/
无需任何更改即可将其打开。点击“构建”
找不到.lib文件。所以我改为复制.dll和.h
即使我遵循QuaZip网站的指示仍然失败
B)导入到项目
我创建新项目(Mobile Qt应用程序)
选择“ Symbian Simulator”,“ Symbian设备”,“ Window桌面”构建环境
导入上述.dll .h文件。
导入zdll.lib,zlib.def(QuaZip项目随附)
在.pro文件中添加以下代码
OTHER_FILES += \
lib/zdll.lib \
lib/zlib.def \
lib/QuaZip.dll
LIBS += $$PWD/lib/zdll.lib
LIBS += $$PWD/lib/QuaZip.dll
INCLUDEPATH += $$PWD/include
DEPENDPATH += $$PWD/include
6.在.cpp文件中,它可以检测到并且我可以创建一个变量
7.我遵循QuaZip网站上的示例。就像这样:QuaZip(fileName);
8.但是,当我运行该应用程序时,它无法启动。但是当我建立它时没有错误
C)其他
我尝试从QuaZip和QtCtypto构建.lib,但失败
它总是生成.dll或.a而不是.lib
最佳答案
前一阵子我非常需要QuaZip。这是我构建的SConscript文件:
# SConscript
env = Environment (tools = ['default', 'qt4'])
env.Tool ('qt4')
env.Append (CPPFLAGS = ['-O2'], CPPDEFINES = ['QT_NO_DEBUG', 'QT_NO_DEBUG_OUTPUT'])
if (env ['PLATFORM'] == 'win32'):
env.Append (CPPPATH = [env ['QT4DIR'] + '/src/3rdparty/zlib'])
env.EnableQt4Modules (['QtCore'])
lib_quazip = env.StaticLibrary ('quazip', Glob ('*.cpp') + Glob ('*.c'))
env.Default (lib_quazip)
Export ('lib_quazip')
如果您不熟悉SCons,可以方便地替换autotools / makefiles。如果我没记错的话,此SConscript可在Windows和Linux上使用。您还需要scons-qt4插件(位于Tools Index),构建QtQrypto可能相似,也可能不相似。
关于qt - QT 4-如何将QuaZip和QtCrypto构建为.lib?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7751714/