Форум » RusXMMS Project » Помогите собрать unzip с патчем. » Ответить

Помогите собрать unzip с патчем.

Gankov: Решил собрать для openSUSE unzip c вашим патчем. Сами библиотеки собрались без проблем, но вот unzip собрать не получается. Во первых скрипт update_shared выдает следующее [pre]./update_shared: line 3: tc-getCC: команда не найдена ./update_shared: line 3: tc-getCC: команда не найдена [/pre] Что ему не хватает? ну и дальше не собирается. Подозреваю что с этим связано. Так как далее везде "команда не найдена"

Ответов - 46, стр: 1 2 3 All

darksoft: А они точно через unzip работают? Могут через 7-zip, например (тоже есть патч) или какую либу.

Lazy_Kent: Не через 7-zip точно. В Krusader в настройках unzip указан. Попробую shared-версию собрать и посмотреть.

Lazy_Kent: Собрал, всё-таки, shared-версию. В спеке написал комментарии, что можно использовать динамически подгружаемую библиотеку. В процессе тестирования прояснится, что лучше. Два патча объединил в один, т. к. патчится один и тот же файл unzpriv.h. В плане отображения в файловых менеджерах ничего не изменилось. Но Krusader распаковывает с правильным именем, хоть и показывает ерунду. В общем, пользоваться можно. Спасибо.


Lazy_Kent: Вот, кстати, в тему: https://bugzilla.novell.com/show_bug.cgi?id=575715 rcc-сборка unzip тоже коряво имя файла показывает.

darksoft: Проверил, патченный unzip правильно работает если все правильно сконфигурировано. Я так понимаю это чешский, т.е. для автоопределения 1) в конфигурации rcc долежн присутсвовать чешский язык: <Language name="cs"> <Charsets> <Charset>CP1250</Charset> <Charset>UTF-8</Charset> <Charset>ISO-8859-2</Charset> <Charset>IBM852</Charset> <Charset>MACCENTRALEUROPE</Charset> <Charset>CSKOI8R</Charset> </Charsets> </Language> 2) Для авто-определения librcc должна быть собрана с поддержкой enca и библиотека enca должна быть доступна в момент запуска. Проверить можно с помощью утилиты rcc-gtk-config (или rcc-gtk2-config). Для чешского языка Engine будет выставлен в "Enca" если библиотека доступна для использования. 3) Система должна работать в чешской локали (как минимум LC_CTYPE) или чешский язык должен быть выставлен по умолчанию в конфигурации rcc. Альтернативно можно включить авто-определение языков, для этого librcc должна быть скомпилирована с aspell и чешские словари aspell должны быть инсталированы (данная фича тестировалась на скорую руку и могут быть проблемы). 4) Локаль файловой системы должна быть правильно выставлена в конфигурации rcc (на UTF-8 или используемую однобайтную чешскую локаль) Если все эти пункты выполняются, то unzip с патчем нормально открывает данный архив.

darksoft: Btw. Я думаю в том баге неплохо отписаться, что у нас решение есть. И, мне кажется, поскольку пакеты под suse ваши будет лучше если это сделаете вы.

Lazy_Kent: Попробую разобраться у себя с настройками и отпишу там, конечно. Добавлено: Забыл такой момент, что в сюзе 11.1 собирается без enca, т. к. её нет в репозитории. Поэтому, видимо, и не отображает правильно. Посмотрю в Factory. А конфиг именно такой и есть.

darksoft: Btw. В /etc/rcc.xml который в текущем пакете есть ошибка. Перепутан двух-буквенный код Чехии. Использовано cz вместо cs. Т.е. может показаться, что чешский там внутри сконфигурирован, но это не так. Надо поправить <Language name="cz"> на <Language name="cs">

Lazy_Kent: Да. Похоже, работает. Конфиг исправил, сделаю патч. [pre2]22:05 kent@lazy ~/download % LANG=cs_CZ.utf8 22:05 kent@lazy ~/download % unzip -l attachment.zip Archive: attachment.zip Length Date Time Name -------- ---- ---- ---- 22 01-21-10 00:16 příliš žluťoučký kůň.mně -------- ------- 22 1 file[/pre2] Правильно отображает? Google говорит, что это "Слишком žluťoučký лошадь" :)

darksoft: Кажись, правильно ;)

Lazy_Kent: Борьба за unzip идёт не на жизнь, а на смерть. Пока 0:1 не в нашу пользу. Но мы не сдаёмся. https://bugzilla.novell.com/show_bug.cgi?id=540598

Lazy_Kent: Возникли какие-то сложности с украинскими именами. В UTF-8, похоже, неправильно отображается. 1. unzip собранный с библиотекой [pre]% unzip -l ua-UTF-8.zip Archive: ua-UTF-8.zip Length Date Time Name -------- ---- ---- ---- 0 05-11-10 22:33 ua-UTF-8/ 5 05-11-10 22:33 ua-UTF-8/ҐґЄєІіЇї.txt -------- ------- 5 2 files[/pre] 2. unzip обычный [pre]% unzip -l ua-UTF-8.zip Archive: ua-UTF-8.zip Length Date Time Name -------- ---- ---- ---- 0 05-11-10 22:33 ua-UTF-8/ 5 05-11-10 22:33 ua-UTF-8/ҐґЄєІіЇї.txt -------- ------- 5 2 files [/pre] Тестовый файл находится здесь: http://www.sendspace.com/file/eg7zmn Там ещё вопрос по некоторым русским кодировкам.

darksoft: Я посмтрел testzip.sh, который в архиве и там с троке ua="...." некоректный unicode. Если я копирую вместо той строки тоже самое, что в ru, то все нормально открывается во всех кодировках.

Lazy_Kent: Да. Всё верно. Поменял текст, и всё читается. А то я уже испугался. Знаю, что должно работать. Спасибо.

Lazy_Kent: Ситуация, однако, не такая простая. С полной строкой украинского алфавита всё работает. "абвгґдеєжзиіїйклмнопрстуфхцчшщьюяАБВГҐДЕЄЖЗИІЇЙКЛМНОПРСТУФХЦЧШЩЬЮЯ" Если оставить только уникальные буквы, то приходим к случаю с невосприятием, описанному в моём утреннем сообщении. Начинаю добавлять кириллические буквы в эту строчку. В какой-то момент перекодировка/отображение начинает срабатывать правильно. Этот порог, похоже, -- равное количество тех и других букв, я точно пока не проверил.

darksoft: А можешь прислать пример, когда срабатывает не правильно. С другой стороны неправильное срабатывание вполне возможно, поскольку алгоритм распознования ориентирован на стандартные слова. Если задавать просто случайный набор букв, то он вполне может не работать. Но реально-то используются, - слова, так что это проблем не создает.

Lazy_Kent: Да я вот тоже утешаю себя, что не должно быть таких имён файлов. В общем, будем ждать багрепортов (если вдруг), а до того не напрягаться.

Lazy_Kent: Включили патч в Factory. Если всё пойдёт нормально, то будет в релизе openSUSE 11.3. Теперь рассматривается вопрос о включении в текущую версию, 11.2. OpenOffice.org собирается нормально, насколько я могу судить. Надеюсь, с остальным тоже проблем не будет.

Lazy_Kent: Будет обновление для openSUSE 11.2. Но есть проблема с версией 6.00. Не отображает русские имена независимо от кодировки имени файла. [pre2]% ~/bin/unzip -v UnZip 6.00 of 20 April 2009, by Info-ZIP. Maintained by C. Spieler. Send bug reports using http://www.info-zip.org/zip-bug.html; see README for details. Latest sources and executables are at ftp://ftp.info-zip.org/pub/infozip/ ; see ftp://ftp.info-zip.org/pub/infozip/UnZip.html for other sites. Compiled with gcc 4.3.2 [gcc-4_3-branch revision 141291] for Unix (Linux ELF) on Jun 22 2010. UnZip special compilation options: COPYRIGHT_CLEAN (PKZIP 0.9x unreducing method not supported) SET_DIR_ATTRIB SYMLINKS (symbolic links supported, if RTL and file system permit) TIMESTAMP UNIXBACKUP USE_EF_UT_TIME USE_UNSHRINK (PKZIP/Zip 1.x unshrinking method supported) USE_DEFLATE64 (PKZIP 4.x Deflate64(tm) supported) VMS_TEXT_CONV [decryption, version 2.11 of 05 Jan 2007] UnZip and ZipInfo environment options: UNZIP: [none] UNZIPOPT: [none] ZIPINFO: [none] ZIPINFOOPT: [none] % ~/bin/unzip -l ru-UTF-8.zip Archive: ru-UTF-8.zip Length Date Time Name --------- ---------- ----- ---- 0 05-13-2010 11:36 ru-UTF-8/ 5 05-13-2010 11:36 ru-UTF-8/????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????.txt --------- ------- 5 2 files % ~/bin/unzip -l ru-CP1251.zip Archive: ru-CP1251.zip Length Date Time Name --------- ---------- ----- ---- 0 05-13-2010 11:36 ru-CP1251/ 5 05-13-2010 11:36 ru-CP1251/????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????.txt --------- ------- 5 2 files[/pre2]

Lazy_Kent: Версия 5.22 нормально: [pre2]% unzip -v UnZip 5.52 of 28 February 2005, by Info-ZIP. Maintained by C. Spieler. Send bug reports using http://www.info-zip.org/zip-bug.html; see README for details. Latest sources and executables are at ftp://ftp.info-zip.org/pub/infozip/ ; see ftp://ftp.info-zip.org/pub/infozip/UnZip.html for other sites. Compiled with gcc 4.3.2 [gcc-4_3-branch revision 141291] for Unix (Linux ELF) on Jun 7 2010. UnZip special compilation options: COPYRIGHT_CLEAN (PKZIP 0.9x unreducing method not supported) SET_DIR_ATTRIB TIMESTAMP USE_EF_UT_TIME USE_UNSHRINK (PKZIP/Zip 1.x unshrinking method supported) USE_DEFLATE64 (PKZIP 4.x Deflate64(tm) supported) VMS_TEXT_CONV [decryption, version 2.9 of 05 May 2000] UnZip and ZipInfo environment options: UNZIP: [none] UNZIPOPT: [none] ZIPINFO: [none] ZIPINFOOPT: [none] % unzip -l ru-UTF-8.zip Archive: ru-UTF-8.zip Length Date Time Name -------- ---- ---- ---- 0 05-13-10 11:36 ru-UTF-8/ 5 05-13-10 11:36 ru-UTF-8/абвгдеёжзийклмнопрстуфхцчшщьыъэюяАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЬЪЫЭЮЯ.txt -------- ------- 5 2 files % unzip -l ru-CP1251.zip Archive: ru-CP1251.zip Length Date Time Name -------- ---- ---- ---- 0 05-13-10 11:36 ru-CP1251/ 5 05-13-10 11:36 ru-CP1251/абвгдеёжзийклмнопрстуфхцчшщьыъэюяАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЬЪЫЭЮЯ.txt -------- ------- 5 2 files[/pre2]



полная версия страницы