QT 4 - Как собрать QuaZip и QtCrypto в .Lib? - PullRequest
3 голосов
/ 13 октября 2011

Последние новости:

  1. Я исправил проблему с QuaZip

  2. QtCrypto теперь работает на платформе Desktop (с AES 256). Но как собрать библиотеку для Symbian ?

Вопросы:

  1. Как мне собрать .lib-файл QtCrypto и QuaZip? (подробности как ниже)
  2. Как использовать Lib в новом проекте мобильного приложения QT (QT Create 2.3)?

    Справка:

  3. Я использую Qt Creator для создания приложения UnZip Manager для устройства Nokia Symbian.

  4. Мне нужно использовать QtCrypto (расшифровать файл) и QuaZip (распаковать zip-файл ePub)
  5. Я не могу использовать их в своем проекте.

Платформа:

  1. База Qt Creator 2.3.0 на Qt 4.7.4
  2. Окно 7 32 бит
  3. Развертывание на Nokia N8

Шаг, который я попробовал:

A) Сборка Lib

  1. Загрузите и откройте проект QtCtypto и QuaZip

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

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

  2. Откройте его без изменений. Нажмите «Построить»

  3. Не удается найти файл .lib. Поэтому я копирую .dll и .h вместо

  4. По-прежнему не удается, даже если я следую инструкциям на сайте QuaZip

B) Импорт в проект

  1. Я создаю новый проект (мобильное приложение Qt)

  2. Выбрана среда сборки "Symbian Simulator", "Symbian Device", "Окно рабочего стола"

  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. Я пытаюсь собрать .lib из QuaZip и QtCtypto, но не получается

  2. Он всегда собирает .dll или .a, но не .lib

1 Ответ

1 голос
/ 14 октября 2011

Некоторое время назад мне очень нужен был 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 / make-файлов.Этот SConscript работал как на Windows, так и на Linux, если я правильно помню.Вам также понадобится плагин scons-qt4 (находится по адресу Индекс инструментов ). Сборка QtQrypto может быть или не быть похожей.

...