QT 4 - 如何将 QuaZip 和 QtCrypto 构建到 .Lib?

标签 qt symbian nokia quazip

最新消息:

  • 我修复了 QuaZip 问题
  • QtCrypto 现在可以在桌面平台(使用 AES 256)上运行。但是如何 为 Symbian 构建库?

  • 问题:
  • 如何构建 QtCryptoand QuaZip 的 .lib 文件? (详情如下)
  • 如何在新的 QT 移动应用程序项目(QT Create 2.3)中使用 Lib?

    背景:
  • 我正在使用 Qt Creator 为诺基亚 Symbian 设备制作 UnZip Manager 应用程序。
  • 我需要使用 QtCrypto(解密文件)和 QuaZip(解压缩 ePub zip 文件)
  • 我不能在我的项目中使用它们。

  • 平台:
  • Qt Creator 2.3.0 基于 Qt 4.7.4
  • 窗口 7 32 位
  • 部署到诺基亚 N8

  • 我试过的步骤:

    A) 构建库
  • 下载并打开 QtCtypto 和 QuaZip 项目

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

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

  • 打开它没有任何变化。点击“构建”
  • 找不到 .lib 文件。所以我复制了 .dll 和 .h 而不是
  • 即使我按照 QuaZip 网站
  • 的指示进行操作,仍然失败


    B) 导入项目
  • 我创建新项目(移动 Qt 应用程序)
  • 选择“Symbian Simulator”、“Symbian Device”、“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 ,它是自动工具/生成文件的方便替代品。如果我没记错的话,这个 SConscript 可以在 Windows 和 Linux 上运行。您还需要 scons-qt4 插件(位于 Tools Index )构建 QtQrypto 可能相似也可能不相似。

    关于QT 4 - 如何将 QuaZip 和 QtCrypto 构建到 .Lib?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7751714/

    相关文章:

    python - QStatusBar 消息在菜单悬停时消失

    c++ - QML翻译

    java-me - 知道 J2ME 中的网络运营商名称

    http - J2ME HttpConnection getResponseCode() 阻止来自诺基亚 N97 上服务器的等待应答

    c++ - qt 文件读取行总是在第二次读取时返回 -1

    c++ - QGraphicsView/QGraphicsScene 定时器事件不工作

    symbian - 在诺基亚的Symbian 手机上构建应用程序需要花费任何费用吗?

    c++ - symbian 的 sqlite db2 错误

    java-me - S40 手机的提醒应用程序

    qt - 在 Ubuntu 13.04 和 QT-Creator 上设置 SFML