2011-10-13 50 views
3

最新消息:QT 4 - 如何构建QuaZip和QtCrypto为.Lib?

  1. 我现在固定QuaZip问题

  2. 的QtCrypto是工作在桌面平台(使用AES 256)。但是如何为构建用于Symbian的lib

问题:

  1. 如何建立QtCryptoand QuaZip的.LIB文件? (详情如下)
  2. 如何在新的QT移动应用程序项目中使用Lib(QT Create 2.3)?

    背景:

  3. 我使用Qt Creator中作出解压缩管理器应用程序的诺基亚塞班设备。

  4. 我需要使用QtCrypto(解密文件)和QuaZip(解压缩ePub zip文件)
  5. 我不能在我的项目中使用它们。

平台:

  1. Qt创建者2.3.0 Qt的4.7.4基
  2. 窗口7 32位
  3. 部署到诺基亚N8

步骤我试图:

A)建库

  1. 下载并打开QtCtypto和QuaZip项目

    QtCtypto:http://delta.affinix.com/qca/

    QuaZip:http://quazip.sourceforge.net/

  2. 打开它没有任何变化。点击“Build”

  3. 无法找到.lib文件。所以我复制.dll和。H而不是

  4. 还是会失败,即使我跟随QuaZip网站

B)的指令导入到项目

  1. 我创造新的项目(移动Qt应用程序)

  2. 选择“Symbian模拟器”,“Symbian设备”,“窗口桌面”构建环境

  3. 导入上述.dll .h文件。

  4. 导入zdll.lib,zlib.def(它配备了QuaZip项目)

  5. 添加以下代码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)其他

  1. 我尝试从QuaZip和QtCtypto建设的.lib但未能

  2. 它总是建立的.dll或.A但不是.lib

+0

你能分享你如何为Symbian编译QuaZip。我也需要它为我的项目。谢谢 – Peacemoon

回答

1

前一段时间我需要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,它是自动工具/ makefile文件方便的remplacement。如果我没有记错,这个SConscript在Windows和Linux上工作。您还需要scons-qt4插件(在Tools Index处找到)构建QtQrypto可能会也可能不会类似。

+0

最后,我自己修复了QuaZip。但仍然无法使用QtCtypto。我可以建立它,但它显示“AES不支持”...... – MagicR