Ru-Board.club
← Вернуться в раздел «Программы»

» FreeArc: бесплатный open-source архиватор

Автор: sav90
Дата сообщения: 25.02.2008 11:44

Цитата:


Цитата: Ну если другие энтузиасты-виндузятники готовы качать gtk только из-за того, что оболочка одновременно разрабатывается и под линух...


программа написана на хаскеле и gtk2hs - единственная реальная GUI-библиотека для него. портабельность - это лишь побочный эффект, на хаскеле (как и на яве, например) вообще трудно писать непортабельно если бы я писал не на хаскеле, а на C++, то ращзработка затянулась бы лет на 10 (как у 7-zip и rar). так что выбор на самом деле такой - или программа с 6-мб инсталлятором прямо сейчас, или с 1-мб через 10 лет
Автор: Bulat_Ziganshin
Дата сообщения: 25.02.2008 14:27

Цитата:
wxWidgets

1. размер dll-ек тот же
2. на С писать довольно скучно, wxHaskell же имеет свои проблемы, делающие его худшим вариантом, нежели gtk2hs

насчёт curl - это библиотека такого же уровня, как и wininet, обе они должны работать через библиотеку сокетов

ещё - помните, мы говорили о расширяемости fa на каком-нибудь скриптовом языке? я обнаружил, что под хаскел есть библиотека для встраивания языка Lua. его поддержка добавит к программе всего 100-200кб. если у кого есть идеи скриптов, которые вы хотели бы написать для fa - пишите. просто так, без реальных потребностей добавлять эту функциональность неинтересно
Автор: Registered User
Дата сообщения: 25.02.2008 18:59

Цитата:
насчёт curl - это библиотека такого же уровня, как и wininet, обе они должны работать через библиотеку сокетов

Булат, а посмотрите, по какому адресу подгружается netapi32.dll Это 5xxxxxxx, x - какие-то цифры. т.е где-то от 1.25 до 1.5 гб. Т.е. от судьбы(то есть от netapi32.dll) похоже не уйдёшь...


Добавлено:
Проверил ещё, так что если юзаем тока wsock32.dll - то всё есть гут. Ф-фух.
Автор: rupinskiy
Дата сообщения: 27.02.2008 00:40
возвращаюсь к своей проблеме - упаковал с ключем мх - тоесть максимум с симетрией- пробуй распаковать - создает пустые папки и все, хотя проц грузит на полную, хотя ни в темп ни на диск ничего не пишет, попробывал запустить с командной строки - пишет что архив не поддерживает данный формат, памёять освобождал по максимум - на машине упаковки не могу распаковать = чертовщина
Автор: Bulat_Ziganshin
Дата сообщения: 27.02.2008 11:29

Цитата:
упаковал с ключем мх

ты уверен, что не -max?


Цитата:
пишет что архив не поддерживает данный формат

не надо художественно пересказывать приведи вывод программы. версию назови. пока что похоже что ты упаковал с -max а проц грузится просто из-за ошибки в 0.40
Автор: rupinskiy
Дата сообщения: 27.02.2008 22:19
Не художественно

[img]http:// [/img]
Автор: Bulat_Ziganshin
Дата сообщения: 28.02.2008 13:32
сюрприз: у нас новый сайт http://freearc.org/ru
и новый участник fa team: Марк Шевченко - веб-мастер, дизайнер, и в будущем возможно разработчик нативной windows-версии

если у вас есть идеи по тому, как должны выглядеть иконки в fa, пишите здесь - Марк, возможно, сможет воплотить их в жизнь

rupinskiy
сколько памяти было на момент упаковки и на момент распаковки? попробуй распаковать с 0.40; на компьютере с большим объёмом ОЗУ. возможно ли, что у тебя был сбой памяти в момент упаковки или дисков при хранении архива? посмотри arcinfo в winarc - сколько памяти для распаковки требуется?


ко всем: добавляйте -t к командам упаковки. это можно сделать через arc.ini, добавив в секцию [Default options]:
a create m u f = -t
Автор: nValka
Дата сообщения: 28.02.2008 16:03
надеюсь в отличие от 7-zip будет сделана нормальная поддержка многотомных архивов(как в WinRAR)
Автор: slech
Дата сообщения: 28.02.2008 16:23
Bulat_Ziganshin

Цитата:
ко всем: добавляйте -t к командам упаковки. это можно сделать через arc.ini, добавив в секцию [Default options]:
a create m u f = -t


если у меня архивирование базы на 10 Гб длится 2 часа - это значит на тестирование уйдёт столько же ?


Добавлено:
офсайт это уже хорошо и красиво.
там правдо пока не хватает раздела - планы развития проекта - Roadmap.
Автор: Bulat_Ziganshin
Дата сообщения: 28.02.2008 16:30

Цитата:
надеюсь в отличие от 7-zip будет сделана нормальная поддержка многотомных архивов(как в WinRAR)

что конкретно нужно сделать, чего в том же 7-zip нет?


Цитата:
если у меня архивирование базы на 10 Гб длится 2 часа - это значит на тестирование уйдёт столько же ?

попробуй. скорей всего меньше. думаю, надо или тестировать архив, или использовать хорошо проверенные архиваторы. freearc пока что к таким не относится, увы
Автор: sabio
Дата сообщения: 28.02.2008 16:57

Цитата:
что конкретно нужно сделать, чего в том же 7-zip нет?

Я так понимаю, речь о частичной распаковке (при отсутствии некоторых томов).
См. например, обсуждение здесь (и продолжение на следующей странице).
А еще, наверное, речь про многотомные sfx-архивы, которые 7-zip тоже не умеет.
Автор: rupinskiy
Дата сообщения: 29.02.2008 00:00

Цитата:
сколько памяти было на момент упаковки и на момент распаковки? попробуй распаковать с 0.40; на компьютере с большим объёмом ОЗУ. возможно ли, что у тебя был сбой памяти в момент упаковки или дисков при хранении архива? посмотри arcinfo в winarc - сколько памяти для распаковки требуется?


Стоит 2 гб. - паковалось на этой же машине что и распаковывается - в аркинфо - пишет что надо 1 гб - есть в наличии, про сбои - сколько паковал перепаковывал - не сбоило
Автор: nValka
Дата сообщения: 29.02.2008 10:07
Bulat_Ziganshin
sabio
да да да. я какраз про частичную распаковку. извините что невнятно высказался.

А еще хотелось бы узнать как обстоят дела с tar.bz2-архивами и подобными ему? а именно:
тотже 7-zipвместо того чтобы распаковать содержимое сразу в папку, вытаскивает tar. из которого потом уже можно распаковать содержимое. Опятьже у WinRARа нет таких замарочек.
Автор: Bulat_Ziganshin
Дата сообщения: 29.02.2008 14:13
rupinskiy
попробуй распаковать с 0.40

далее. сбой у тебя в солид-блоке, содержащем всего 12 мб данных. запусти "arc t archive -i2" и локализуй этот солид-блок. затем удали из архива все прочие файлы. останется всего пара мегабайт, перешлёшь их мне и я попытаюсь их извлечь



Цитата:
А еще хотелось бы узнать как обстоят дела с tar.bz2-архивами и подобными ему

с ними никаких порблем, поскольку программа пока поддерживает только свои собственные архивы я планирую добавить поддержку других типов архивов через библиотеки 7-zip, но это только где-то осенью


Цитата:
А еще, наверное, речь про многотомные sfx-архивы, которые 7-zip тоже не умеет.

это сделать будет несложно, насколько я понимаю


Цитата:
я какраз про частичную распаковку

ok. представим себе многотомный архив, раскиданный по сидюкам. если использовать простую стратегию, то fa просто "распилит" обычный архив на части соответствующего размера. при этом всё оглавление архива попадёт в последний том, поэтому при распаковке надо булет вставить сначала его, а затем программа сама будет подсказывать какие сидюки вставлять

более сложная в реализации стратегия - это стараться записывать оглавление каждого тома в него же. однако поскольку fa сжимает данные сравнительно большими кусками, это достаточно сложно реализовать точно. видимо, самый подходящий вариант - просто в тот момент, когда мы видим, что записываемые в архив данные выходят за его границы, формировать оглавление уже записанных данных и закидывать его в конец тома. при этом тома не будут полностью независимыми - оглавление тома может включать информацию о нескольких мегабайтах или десятках мегабайт из предыдущего или следующего тома. собственно, для удобства распаковки видимо лучше чтобы это всегда были данные о *следующем* томе - тогда их можно будет распаковывать чисто последовательно, просто вставляя сидюки друг за другом

Автор: Nikolai2004
Дата сообщения: 03.03.2008 19:46
www.maximumcompression.com
02-March-2008: The MFC results of FreeARC 0.50a are about 4MB worse for all switch combinations tested compared to FreeARC 0.40.

хотелось бы услышать комментарий Булата
Автор: Bulat_Ziganshin
Дата сообщения: 03.03.2008 20:21
ну я же писал неоднократно - тестирование типов файлов работает хуже чем ручное определение. один из секретов успеха fa на MFC - ручной подбор типа сжатия для наиболее заметных там файлов, благо что их описания и расширения приведены. 0.50 не использует метки $text/$binary в arc.groups, она определяет типы файлов сама

я сейчас приняляс снова переделывать этот код, но боюсь что ему придётся испытать ещё несколько итераций прежде чем он будет удовлетворять меня
Автор: Nikolai2004
Дата сообщения: 03.03.2008 20:35
может сделать какой-нибудь свитч, который бы позволял выбирать метод определения типа файлов: автоматический или по расширению?
Автор: Bulat_Ziganshin
Дата сообщения: 04.03.2008 13:03

Цитата:
автоматический или по расширению?

-ma
Автор: Nikolai2004
Дата сообщения: 04.03.2008 20:49

Цитата:
-maLEVEL set filetype detection LEVEL (+/-/1..9)
абсолютно неинформативно. как пользоваться этим ключом? какая нужна комбинация для определения файлов по расширению, а какая для автоматического? у меня -ma- создаёт бОльший архив, чем -ma+. что такое -ma1 ... -ma9?

ещё вопрос про многопоточность. она поддерживается? у меня в Core 2 Duo E4300 при архивации winrar и 7-zip загружены оба ядра на 100%, а при архивации freearc только на 50%
Автор: PAQer
Дата сообщения: 04.03.2008 22:44
Кстати есть идея для увеличения скорости при использовании квадов в некоторых задачах (процессоров), даже не идея, а хитрость . Смысл в задействовании TTA кодера параллелльно работе основного (REP/LZMA). Недостаток - при большОм количестве wav-файлов, данные приходится писать в темп файл.

Да и... Игорь Павлов, в ближайшем будущем, должен представить обновленный SDK. Насколько я понял он c нуля переписал код декомпрессии LZMA и скорость реально увеличилась (в районе 10-15% в зависимости от процессоров)
Автор: rajah
Дата сообщения: 04.03.2008 23:24
GUI без .NET ненайдется?
Автор: slech
Дата сообщения: 04.03.2008 23:51
rajah
Текущая альфа версия 0.50 от 8 февраля 2008 г.
под Gtk и Gui есть.
Автор: nValka
Дата сообщения: 05.03.2008 10:04

Цитата:
под Gtk и Gui есть.

тож не лучше
Автор: Bulat_Ziganshin
Дата сообщения: 05.03.2008 11:39
-ma- - по arc.groups
-ma+ - по содержимому
2..9 - пока эквивалентно +, в будущем предполашается разные степени дотоности -ma+, используемые по умолчанию в разных режимах сжатия


Цитата:
у меня -ma- создаёт бОльший архив, чем -ma+. что такое -ma1 ... -ma9?

да пойми ты - это зависит от конкретной ситуации. если arc.groups идеально настроен и каждый файл вписан в подходящую ему группу - то -ma- будет завендомо не хуже, чем -ma+. в твоём тесте (одном-единственном, а ты пищещь так, как будто то всегда верно) очевидно либо arc.groups не включает правильных описаний каких-то файлов, либо файлы с каким-то расширением частично лучше пакуются как текстовые, частично как бинарные


Цитата:
ещё вопрос про многопоточность.

как и в 7-zip - только для lzma. может, в твоём тесте текстовые файлы паковались?
Автор: VitaliM
Дата сообщения: 05.03.2008 11:44
Bulat_Ziganshin
А реально сделать dll для возможности встраивания упаковки-распаковки в свои программы?
Автор: Bulat_Ziganshin
Дата сообщения: 05.03.2008 12:50

Цитата:
А реально сделать dll для возможности встраивания упаковки-распаковки в свои программы?

э... а почему ты не хочешь использовать скажем готовые библиотеки lzma, ppmd, grzip?


Цитата:
под Gtk и Gui есть.
тож не лучше

может, пора сделать фак? этот вопрос всплывает на каждой странице


Цитата:
Кстати есть идея для увеличения скорости

эта идея обобщается до параллельного сжатия независимых солид-блоков, что конечно есть в отдалённых планах


Цитата:
декомпрессии LZMA и скорость реально увеличилась (в районе 10-15%

эта скорость меня лично волнует меньше всего. я внёс некоторые изменения в lzma 4.43 и не хотелось бы тратить время на переход на новые версии lzma, пока в них не будет принципиальных изменений. как только будут - пишите, хотя sf 7-zip форум я тоже читаю

Добавлено:
btw, arc.ini settings for rzm:

[External compressor:rzm]
cmem = 256
dmem = 64
packcmd = rzm c $$arcdatafile$$.tmp $$arcpackedfile$$.tmp
unpackcmd = rzm d $$arcpackedfile$$.tmp $$arcdatafile$$.tmp

i'm not sure about mem settings..
Автор: Bulat_Ziganshin
Дата сообщения: 05.03.2008 15:01
согласно показаний автора программы :

[External compressor:rzm]
cmem = 260
dmem = 130
packcmd = rzm c $$arcdatafile$$.tmp $$arcpackedfile$$.tmp
unpackcmd = rzm d $$arcpackedfile$$.tmp $$arcdatafile$$.tmp
Автор: TBoris
Дата сообщения: 06.03.2008 00:18
хм, не компилится под архитектуру x86_64 (gentoo linux)

Цитата:
#./compile-O2-DFREEARC_GUI
g++ -c -c -fno-exceptions -fno-rtti -Wno-unknown-pragmas -Wno-sign-compare -Wno-conversion -Os -march=i486 -mtune=pentiumpro -fomit-frame-pointer -ffast-math -fforce-addr -fstrict-aliasing -g0 -DFREEARC_UNIX -DFREEARC_INTEL_BYTE_ORDER -o /tmp/out/FreeArc/CompressionLibrary.o CompressionLibrary.cpp
CompressionLibrary.cpp:1: ошибка: заданный процессор не поддерживает набор команд x86-64
CompressionLibrary.cpp:1: ошибка: заданный процессор не поддерживает набор команд x86-64
make: *** [/tmp/out/FreeArc/CompressionLibrary.o] Ошибка 1
g++ -c -fno-rtti -Wall -Wno-unknown-pragmas -Wno-sign-compare -Wno-conversion -Os -march=i486 -mtune=pentiumpro -fomit-frame-pointer -fstrict-aliasing -ffast-math -fforce-addr -g0 -DFREEARC_UNIX -DFREEARC_INTEL_BYTE_ORDER -o /tmp/out/FreeArc/C_External.o C_External.cpp
C_External.cpp:1: ошибка: заданный процессор не поддерживает набор команд x86-64
C_External.cpp:1: ошибка: заданный процессор не поддерживает набор команд x86-64
make: *** [/tmp/out/FreeArc/C_External.o] Ошибка 1
g++ -c -fno-exceptions -fno-rtti -Wall -Wno-unknown-pragmas -Wno-sign-compare -Wno-conversion -O3 -march=i486 -mtune=pentiumpro -fomit-frame-pointer -fstrict-aliasing -fforce-addr -funroll-loops -g0 -DFREEARC_UNIX -DFREEARC_INTEL_BYTE_ORDER -o /tmp/out/FreeArc/C_LZP.o C_LZP.cpp
C_LZP.cpp:1: ошибка: заданный процессор не поддерживает набор команд x86-64
C_LZP.cpp:1: ошибка: заданный процессор не поддерживает набор команд x86-64
make: *** [/tmp/out/FreeArc/C_LZP.o] Ошибка 1
g++ -c -fno-exceptions -fno-rtti -Wall -Wno-unknown-pragmas -Wno-sign-compare -Wno-conversion -O3 -march=i486 -mtune=pentiumpro -fomit-frame-pointer -fstrict-aliasing -fforce-addr -funroll-loops -g0 -DFREEARC_UNIX -DFREEARC_INTEL_BYTE_ORDER -o /tmp/out/FreeArc/C_REP.o C_REP.cpp
C_REP.cpp:1: ошибка: заданный процессор не поддерживает набор команд x86-64
C_REP.cpp:1: ошибка: заданный процессор не поддерживает набор команд x86-64
make: *** [/tmp/out/FreeArc/C_REP.o] Ошибка 1
g++ -c -fno-exceptions -fno-rtti -Wall -Wno-unknown-pragmas -Wno-sign-compare -Wno-conversion -O3 -march=i486 -mtune=pentiumpro -fomit-frame-pointer -fstrict-aliasing -fforce-addr -funroll-loops -g0 -DFREEARC_UNIX -DFREEARC_INTEL_BYTE_ORDER -o /tmp/out/FreeArc/C_Delta.o C_Delta.cpp
C_Delta.cpp:1: ошибка: заданный процессор не поддерживает набор команд x86-64
C_Delta.cpp:1: ошибка: заданный процессор не поддерживает набор команд x86-64
make: *** [/tmp/out/FreeArc/C_Delta.o] Ошибка 1
g++ -c -fno-exceptions -fno-rtti -Wall -Wno-unknown-pragmas -Wno-sign-compare -Wno-conversion -O3 -march=i486 -mtune=pentiumpro -fomit-frame-pointer -fstrict-aliasing -fforce-addr -funroll-loops -g0 -DFREEARC_UNIX -DFREEARC_INTEL_BYTE_ORDER -o /tmp/out/FreeArc/C_MM.o C_MM.cpp
C_MM.cpp:1: ошибка: заданный процессор не поддерживает набор команд x86-64
C_MM.cpp:1: ошибка: заданный процессор не поддерживает набор команд x86-64
make: *** [/tmp/out/FreeArc/C_MM.o] Ошибка 1
g++ -c -fno-exceptions -fno-rtti -Wno-unknown-pragmas -Wno-sign-compare -Wno-conversion -O6 -march=i486 -mtune=pentiumpro -fomit-frame-pointer -fstrict-aliasing -fforce-addr -ffast-math -funroll-loops --param inline-unit-growth=999999 -g0 -DFREEARC_UNIX -DFREEARC_INTEL_BYTE_ORDER -o /tmp/out/FreeArc/C_Tornado.o C_Tornado.cpp
C_Tornado.cpp:1: ошибка: заданный процессор не поддерживает набор команд x86-64
C_Tornado.cpp:1: ошибка: заданный процессор не поддерживает набор команд x86-64
make: *** [/tmp/out/FreeArc/C_Tornado.o] Ошибка 1
g++ -c -fno-rtti -Wall -Wno-unknown-pragmas -Wno-sign-compare -Wno-conversion -O3 -march=i486 -mtune=pentiumpro -fomit-frame-pointer -fstrict-aliasing -ffast-math -fforce-addr -g0 -DFREEARC_UNIX -DFREEARC_INTEL_BYTE_ORDER -o /tmp/out/FreeArc/C_Dict.o C_Dict.cpp
C_Dict.cpp:1: ошибка: заданный процессор не поддерживает набор команд x86-64
C_Dict.cpp:1: ошибка: заданный процессор не поддерживает набор команд x86-64
make: *** [/tmp/out/FreeArc/C_Dict.o] Ошибка 1
g++ -c -fno-exceptions -fno-rtti -Wall -Wno-unknown-pragmas -Wno-sign-compare -Wno-conversion -O1 -march=i486 -mtune=pentiumpro -fomit-frame-pointer -fstrict-aliasing -fforce-addr -funroll-all-loops -floop-optimize2 -g0 -DFREEARC_UNIX -DFREEARC_INTEL_BYTE_ORDER -o /tmp/out/FreeArc/C_PPMD_Parser.o C_PPMD_Parser.cpp
C_PPMD_Parser.cpp:1: ошибка: заданный процессор не поддерживает набор команд x86-64
C_PPMD_Parser.cpp:1: ошибка: заданный процессор не поддерживает набор команд x86-64
make: *** [/tmp/out/FreeArc/C_PPMD_Parser.o] Ошибка 1
g++ -c -fno-exceptions -fno-rtti -Wno-unknown-pragmas -Wno-sign-compare -Wno-conversion -O2 -march=i486 -mtune=pentiumpro -fomit-frame-pointer -fforce-addr -ffast-math -fstrict-aliasing -funroll-loops -g0 -DFREEARC_UNIX -DFREEARC_INTEL_BYTE_ORDER -o /tmp/out/FreeArc/C_GRZip.o C_GRZip.cpp
C_GRZip.cpp:1: ошибка: заданный процессор не поддерживает набор команд x86-64
C_GRZip.cpp:1: ошибка: заданный процессор не поддерживает набор команд x86-64
make: *** [/tmp/out/FreeArc/C_GRZip.o] Ошибка 1
g++ -c -fno-rtti -Wall -Wno-unknown-pragmas -Wno-sign-compare -Wno-conversion -O2 -march=i486 -mtune=pentiumpro -fomit-frame-pointer -fstrict-aliasing -ffast-math -fforce-addr -funroll-loops -g0 -DFREEARC_UNIX -DFREEARC_INTEL_BYTE_ORDER -o /tmp/out/FreeArc/C_LZMA.o C_LZMA.cpp
C_LZMA.cpp:1: ошибка: заданный процессор не поддерживает набор команд x86-64
C_LZMA.cpp:1: ошибка: заданный процессор не поддерживает набор команд x86-64
make: *** [/tmp/out/FreeArc/C_LZMA.o] Ошибка 1
g++ -c -fno-exceptions -fno-rtti -Wall -Wno-unknown-pragmas -Wno-sign-compare -Wno-conversion -O3 -march=i486 -mtune=pentiumpro -fomit-frame-pointer -fstrict-aliasing -fforce-addr -funroll-loops -g0 -DFREEARC_UNIX -DFREEARC_INTEL_BYTE_ORDER -Iheaders -o /tmp/out/FreeArc/C_Encryption.o C_Encryption.cpp
C_Encryption.cpp:1: ошибка: заданный процессор не поддерживает набор команд x86-64
C_Encryption.cpp:1: ошибка: заданный процессор не поддерживает набор команд x86-64
make: *** [/tmp/out/FreeArc/C_Encryption.o] Ошибка 1
g++ -c -fno-exceptions -fno-rtti -Wall -Wno-unknown-pragmas -Wno-sign-compare -Wno-conversion -O3 -march=i486 -mtune=pentiumpro -fomit-frame-pointer -fstrict-aliasing -ffast-math -fforce-addr -g0 -DFREEARC_UNIX -DFREEARC_INTEL_BYTE_ORDER -o /tmp/out/FreeArc/Environment.o Environment.cpp
Environment.cpp:1: ошибка: заданный процессор не поддерживает набор команд x86-64
Environment.cpp:1: ошибка: заданный процессор не поддерживает набор команд x86-64
make: *** [/tmp/out/FreeArc/Environment.o] Ошибка 1
rm: невозможно удалить `Tests/winarc': Нет такого файла или каталога

GUI.hs:21:7:
Could not find module `Graphics.UI.Gtk.ModelView':
Use -v to see a list of the files searched for.
rm: невозможно удалить `Compression/CompressionLib_stub.?': Нет такого файла или каталога

Сразу настораживает, что он неправильно определил тип процессора: march=pentiumpro вместо nocona ( в make.conf указан верный).
Компилил 0.5 альфа из исходников, указанных в шапке.
Автор: Bulat_Ziganshin
Дата сообщения: 06.03.2008 00:22

Цитата:
Сразу настораживает, что он неправильно определил тип процессора: march=pentiumpro вместо nocona ( в make.conf указан верный).
Компилил 0.5 альфа из исходников, указанных в шапке.

64-бмтные платформы не поддерживаются. у меня этого добра нет, и нужно будет прилично поработаь напильником над rep/tornado/dict/lzp чтобы они заработали в этом режиме
Автор: Registered User
Дата сообщения: 08.03.2008 12:25
надо бы поправить планы дальнейшего развития. Булат, идёт ли работа и если да,то в каком направлении?

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667

Предыдущая тема: Установка и настройка SAMS


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.