Russian Qt Forum

Qt => Общие вопросы => Тема начата: andrew.k от Июнь 09, 2012, 17:50



Название: использование lzma в qt
Отправлено: andrew.k от Июнь 09, 2012, 17:50
Кто-нибудь пробовал прикрутить?
Нужно работать с архивами.
Было бы правильно, чтобы lzma была как внешняя либа.


Название: Re: использование lzma в qt
Отправлено: maint от Июнь 09, 2012, 18:22
если абстрактно то на сайте 7-zip. Там SDK отдельной dll и сырцами.


Название: Re: использование lzma в qt
Отправлено: andrew.k от Июнь 10, 2012, 14:04
если абстрактно то на сайте 7-zip. Там SDK отдельной dll и сырцами.
Я не понял две вещи.
1. Как собрать отдельную dll
2. Как работать с архивами.

Я так понимаю, там нет готовых классов для работы с архивами, только для сжатия и декомпрессии данных.


Название: Re: использование lzma в qt
Отправлено: maint от Июнь 10, 2012, 14:35
вообще довольно толково расписано в lzma.txt. 
Цитировать
C/  - C files
        7zCrc*.*   - CRC code
        Alloc.*    - Memory allocation functions
        Bra*.*     - Filters for x86, IA-64, ARM, ARM-Thumb, PowerPC and SPARC code
        LzFind.*   - Match finder for LZ (LZMA) encoders
        LzFindMt.* - Match finder for LZ (LZMA) encoders for multithreading encoding
        LzHash.h   - Additional file for LZ match finder
        LzmaDec.*  - LZMA decoding
        LzmaEnc.*  - LZMA encoding
        LzmaLib.*  - LZMA Library for DLL calling
        Types.h    - Basic types for another .c files
        Threads.*  - The code for multithreading.

    LzmaLib  - LZMA Library (.DLL for Windows)
классов для отдельно взятых программ естественно нет. Но как пример можно поглядеть, например peazip. Это архиватор использующий в том числе и lzma. Написан с использованием Qt


Название: Re: использование lzma в qt
Отправлено: andrew.k от Июнь 10, 2012, 14:44
вообще довольно толково расписано в lzma.txt. 
Цитировать
C/  - C files
        7zCrc*.*   - CRC code
        Alloc.*    - Memory allocation functions
        Bra*.*     - Filters for x86, IA-64, ARM, ARM-Thumb, PowerPC and SPARC code
        LzFind.*   - Match finder for LZ (LZMA) encoders
        LzFindMt.* - Match finder for LZ (LZMA) encoders for multithreading encoding
        LzHash.h   - Additional file for LZ match finder
        LzmaDec.*  - LZMA decoding
        LzmaEnc.*  - LZMA encoding
        LzmaLib.*  - LZMA Library for DLL calling
        Types.h    - Basic types for another .c files
        Threads.*  - The code for multithreading.

    LzmaLib  - LZMA Library (.DLL for Windows)
классов для отдельно взятых программ естественно нет. Но как пример можно поглядеть, например peazip. Это архиватор использующий в том числе и lzma. Написан с использованием Qt
Это я видел. Как это скомпилить? (mingw)
Либо нет мейкфайлов, либо ошибки в них


Название: Re: использование lzma в qt
Отправлено: maint от Июнь 10, 2012, 15:07
нпосмотрел я описание и makefile. Они заточены официально, как и архиватор на M$ компилер. Так что без напильника вряд ли собрать получится. На основе M$ стряпать свой makefile.  Или брать готовый из того же peazip.


Название: Re: использование lzma в qt
Отправлено: Zeka13 от Июнь 21, 2012, 17:20
мне вот тоже интересно как прям из под Qt  работать с разными архивами!