The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Google представил библиотеку jpegli для более эффективного сжатия JPEG-изрбражений , opennews (??), 04-Апр-24, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


15. "Google представил библиотеку jpegli для более эффективного с..."  –1 +/
Сообщение от Zenitur (ok), 04-Апр-24, 12:22 
Как знал, не переходил на libjpeg8 с libjpeg62! Сейчас заменю libjpeg62 на jpegli. Надеюсь, для сборки не потребуется какой-нибудь meson и llvm?

Upd: уже глянул - cmake и clang-7 или новее. Норм, на apt.llvm.org есть готовая сборка LLVM 7 даже для Debian 7. Так что проблем со сборкой не возникнет.

Ответить | Правка | Наверх | Cообщить модератору

17. "Google представил библиотеку jpegli для более эффективного с..."  +/
Сообщение от Аноним (118), 04-Апр-24, 12:30 
Мань, сабж на плюсах написан. И ты каждый раз бежишь внедрять все сырые поделки корп? Тот же guetzli оказался весьма дорого и крайне не без потерь, libjpeg-turbo хотя бы предсказуема. А что касается jpegxl, то я очень доволен. Кроме того случая, когда все прошлые файлы внезапно оказались битыми (декодируются с зелёными артефактами местами) для всех новых версий библиотеки, совместимость-с.
Ответить | Правка | Наверх | Cообщить модератору

21. "Google представил библиотеку jpegli для более эффективного с..."  +/
Сообщение от Zenitur (ok), 04-Апр-24, 12:46 
> И ты каждый раз бежишь внедрять все сырые поделки корп

Я делаю домашние сборки некоторого ПО. Вот пример такой сборки:

https://github.com/OpenXRay/xray-16/files/14234005/S.T.A.L.K...

Свои сборки линкую с libpng12 и libjpeg62. Я выбрал их для совместимости: эти версии библиотек у всех есть (в отличие от libpng15, который сегодня заменили на libpng16, а завтра заменят на libpng17).

Однако хочется же с libjpeg8 слинковаться? Чтобы софтина работала быстрее. Но вдруг у юзера нет этой библиотеки? Я понимаю что "стандарт де-факто", но вдруг завтра поломают ABI и выпустят libjpeg9? Такое уже было с libjpeg7.

Поэтому я сейчас положу в архив с моей сборкой - сабж. Он такой же быстрый, как libjpeg8, но при этом имеет прежний ABI libjpeg62.

Ответить | Правка | Наверх | Cообщить модератору

28. "Google представил библиотеку jpegli для более эффективного с..."  +/
Сообщение от Аноним (118), 04-Апр-24, 13:07 
У плюсов перечень забавных приколов с аби и библиотекой раскрутки стека, это ещё если исключения не используются, такая библиотека менее универсальна и переносима. Зачем тебе чтобы софтина работала быстрее, ценой замены аутентичного компонента на непонятно что с непонятно какими непредсказуемыми последствиями? Наоборот, стоит бороться за сохранение и презервацию аутентичного кода для будущих поколений и тут чем меньше васянства и отклонений от оригинала, тем лучше.
Ответить | Правка | Наверх | Cообщить модератору

29. "Google представил библиотеку jpegli для более эффективного с..."  +1 +/
Сообщение от Аноним (29), 04-Апр-24, 13:12 
>libpng15, который сегодня заменили на libpng16

Очнись! Твое "сегодня" - это сентябрь 2017 года.

Ответить | Правка | К родителю #21 | Наверх | Cообщить модератору

31. "Google представил библиотеку jpegli для более эффективного с..."  –1 +/
Сообщение от Zenitur (ok), 04-Апр-24, 13:14 
В RHEL всё ещё libpng15
Ответить | Правка | Наверх | Cообщить модератору

33. "Google представил библиотеку jpegli для более эффективного с..."  +/
Сообщение от Аноним (33), 04-Апр-24, 13:24 
Потому что все остальные версии либы насквозь протроянены похуже xz.
Ответить | Правка | Наверх | Cообщить модератору

36. "Google представил библиотеку jpegli для более эффективного с..."  +1 +/
Сообщение от Zenitur (ok), 04-Апр-24, 13:27 
> Потому что все остальные версии либы насквозь протроянены похуже xz.

Не, потому что последний RHEL релизнулся хрен знает когда. Я тут загуглил - оказывается, 9-й уже вышел... Я не знал.

Тогда в актуальном RHEL уже libpng16. Извиняюсь, был не прав.

Ответить | Правка | Наверх | Cообщить модератору

77. "Google представил библиотеку jpegli для более эффективного с..."  +/
Сообщение от cheburnator9000 (ok), 04-Апр-24, 18:05 
Зенитурушка ты что все старые пакеты всех RPM дистрибутивов у себя хранишь? Их же наверное уже не существует.
Ответить | Правка | Наверх | Cообщить модератору

88. "Google представил библиотеку jpegli для более эффективного с..."  +/
Сообщение от Зазнайка (?), 04-Апр-24, 19:42 
Зато существуют у него, у Вас от этого убыло что ли?
Ответить | Правка | Наверх | Cообщить модератору

129. "Google представил библиотеку jpegli для более эффективного с..."  +/
Сообщение от Аноним (-), 05-Апр-24, 01:10 
> Зенитурушка ты что все старые пакеты всех RPM дистрибутивов у себя хранишь?
> Их же наверное уже не существует.

Пусть качнет, чтоли, archive.debian.org себе. Если получится, сможет mirror'ом подрабатывать.

Ответить | Правка | К родителю #77 | Наверх | Cообщить модератору

153. "Google представил библиотеку jpegli для более эффективного с..."  +/
Сообщение от Zenitur (ok), 05-Апр-24, 12:56 
> Зенитурушка ты что все старые пакеты всех RPM дистрибутивов у себя хранишь?
> Их же наверное уже не существует.

От CentOS я нашёл архивные зеркала + RPMFusion. От SLES 11 бэкапил, но пока что бэкап не понадобился: в интернете всё ещё есть пакеты.

Ответить | Правка | К родителю #77 | Наверх | Cообщить модератору

95. "Google представил библиотеку jpegli для более эффективного с..."  +/
Сообщение от Аноним (93), 04-Апр-24, 20:12 
А в чем проблема с llvm?
Ответить | Правка | К родителю #15 | Наверх | Cообщить модератору

151. "Google представил библиотеку jpegli для более эффективного с..."  +/
Сообщение от Zenitur (ok), 05-Апр-24, 12:19 
Обычно я осуществляю сборку в старых дистрах, чтобы бинарник запускался в широком диапазоне Linux-систем, выпущенных за последние 10-15 лет.

А вот как собрать LLVM из исходников, мне неведомо. С GCC всё просто:

tar xf gcc-4.8.5.tar.bz2
cd gcc-4.8.5
mkdir build2
cd build2
../configure --prefix=/home/username/gcc-4.8 --enable-languages=c,c++
make -j7 // кол-во физических ядер +1
make install
export PATH=/home/username/gcc-4.8/bin:$PATH
export LD_LIBRARY_PATH=/home/username/gcc-4.8/lib:$LD_LIBRARY_PATH
gcc --version

Единственный минус такого GCC - бинарники, собранные таким компилятором, зависят от слишком новой libstd - новее, чем та, которая в /usr/lib. Как починить - не знаю! Наверное, надо смотреть devtoolset, там libstdc++.so заменён на какой-то текстовый файл - мне кажется, что разгадка скрыта где-то тут.

А вот с LLVM непонятно... В Debian DEB-SRC-пакет, который состоит из... шести архивов с исходниками... Их просто последовательно распаковать, или что? А собирать потом как? Дело в том, что идущий в комплекте debian/rules хрен распарсишь. Там ещё и stage-ы! Вот бы инструкцию - тогда бы я собрал любую версию LLVM, которая мне нужна. Чтобы просто в папке лежала, как вон выше пример с GCC...

Плюс ко всему, когда я собирал пакет LLVM 7 под Debian 7, я столкнулся с ошибкой, описанной тут:

https://www.linux.org.ru/forum/development/15941285

У автора треда Debian 10, но суть та же. Причём 64-битная сборка собралась без проблем! Ошибка только при сборке 32-битной сборки!

Хорошо что на сайте apt.llvm.org есть готовые пакеты с LLVM 7, и я смог установить их в 32-битную версию ОС Debian 7. А что если у меня не Debian, а что-то другое? Или Debian 6, например?

Ну и ещё при сборке Mesa 19.0.8 (последняя версия без Meson) возникла ошибка при сборке MesaOpenCL. Такая же ошибка возникла при сборке Beignet 1.3.2. Оказалось, что в binutils 2.26 прокралась регрессия, из-за которой LLVM генерирует неправильный код! Регрессию поправили в binutils 2.31.

А у меня в Debian 8 из коробки был binutils 2.25, который не был подвержен регрессии. Я зачем-то обновил binutils до более новой версии. А потом я потратил недели, чтобы понять, почему же я не могу собрать месу? Ведь предыдущая 18.3.6 собиралась без проблем... Ответ нашёлся, когда я попробовал пересобрать уже собранную у меня Mesa 18.3.6, и когда она не собралась, я понял, что я что-то запорол в своей системе - причём недавно. А значит, надо смотреть, какие пакеты я устанавливал в систему последними...

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру