1.1, Аноним (1), 00:35, 20/05/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +6 +/– |
когда уже выпилят этот сломанный статический nss и dlopen? Он никогда не работает и только проблемы создаёт, Обычно бинарники собирают статически не чтобы из них dlopen делать.
Статический ffmpeg на дебиане вообще сегфолтится при попытке ресолвинга, очень полезно!!!
| |
|
|
3.10, fi (ok), 09:26, 20/05/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
Это известный баг - когда nss от другой libc - такое блюдо надо уметь готовить.
Но что странно - так то что ссылаются на
2017-12-19 Dmitry V. Levin <ldv@altlinux.org>
* elf/dl-load.c (is_trusted_path): Remove.
(fillin_rpath): Remove check_trusted argument and its use,
all callers changed.
кто-то внес "оптимизацию" )))))
| |
|
4.36, Аноним (36), 18:50, 20/05/2025 [^] [^^] [^^^] [ответить]
| +/– |
Левин небось за это повышение получил. Может даже старлея дали.
| |
|
5.38, Аноним (38), 20:06, 20/05/2025 [^] [^^] [^^^] [ответить]
| +/– |
Так он её выпилил как раз потому, что она нигде не используется. Очень похоже, что кто-то с помощью нейросетки пытается поднять себе KPI, внося тормоза в нормальный код.
| |
|
|
3.42, Аноним (42), 23:22, 20/05/2025 [^] [^^] [^^^] [ответить]
| +/– |
~$ /usr/lib/x86_64-linux-gnu/libc.so.6
GNU C Library (Debian GLIBC 2.36-9+deb12u9) stable release version 2.36.
Запустить ffmpeg-7.0.2-amd64-static отсюда:
https://johnvansickle.com/ffmpeg/
и попытаться сделать любой сетевой запрос, как-то связанный с nss, например подать ссылку с любым доменом на вход приводит к сегфолту. На других версиях обычно был не сегфолт, а просто ресолвинг не работал.
Претензия в том, что в статический билд вообще попадает динамическая загрузка nss. Вместо этого должен быть либо стаб, либо фоллбэк, поддерживающий какую-то минимальную конфигурацию
| |
|
2.17, Аноним (17), 11:50, 20/05/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
Удивительно что для статической сборки кто-то использует glibc, разве это не киллер фичи компактных реализаций uclibc и musl.
| |
|
3.43, Аноним (42), 23:24, 20/05/2025 [^] [^^] [^^^] [ответить]
| +/– |
В посте выше ссылка на сайт со статическими билдами и там зачем-то glibc (а помимо прочего ещё и x11 влинкован).
| |
|
2.49, Аноним (49), 11:34, 21/05/2025 [^] [^^] [^^^] [ответить]
| +/– |
> когда уже выпилят этот сломанный статический nss и dlopen
> разработчики Glibc не смогли найти ни одной suid-программы, к которой была бы применима найденная уязвимость
когда начнут находить, тогда может кто и профинансирует выпиливание.
| |
|
1.2, Аноним (-), 01:36, 20/05/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +12 +/– |
> затрагивающая статически собранные suid-файлы с dlopen
А теперь коронный номер - поза "фантомас в очках на аэроплане".
| |
|
2.26, Жироватт (ok), 13:58, 20/05/2025 [^] [^^] [^^^] [ответить]
| +3 +/– |
Скорее уж "Товарищ милиционер, а вот если залезть на шкаф и воооот така вооооот выгнуть восьмёркой шею, то можно увидеть в бинокль голых девок в бане на том конце улицы! Примите меры!".
| |
|
|
2.4, Аноним (1), 04:10, 20/05/2025 [^] [^^] [^^^] [ответить]
| +4 +/– |
зачем, когда можно её починить, а не пихать туда сомнительные вещи?
| |
2.11, adolfus (ok), 09:34, 20/05/2025 [^] [^^] [^^^] [ответить]
| –4 +/– |
Статическая сборка хороша тем, что приложение использует меньше физической памяти и работает быстрее. Каждая .so независимо от реального размера загружаемого содержимого требует, минимум, три собственных страницы физической памяти, а статическая ровно столько, сколько занимает сама библиотека. Первый вызов функции из .so требует некоторого дополнительного времени на некотороые системные действия, что особенно заметно в интерактивных приложениях, котороые во время инициализации интерфейса выполняют десятки вызовов. Выглядит это как тормоза и достигают эти тормоза нескольких секунд.
| |
|
3.12, Аноним (12), 09:57, 20/05/2025 [^] [^^] [^^^] [ответить]
| +6 +/– |
> приложение использует меньше физической памяти
Не неси чушь. SO либы в юнискосых системах расшарены, т.е. библиотека загружается ровно один раз даже если ее использует 100 программ.
В отличие от статической линковки, лол.
> некоторого дополнительного времени
> некотороые системные действия
А, сори, у нас тут эксперт в треде. Чему я удивляюсь...
| |
|
4.22, Аноним (-), 12:28, 20/05/2025 [^] [^^] [^^^] [ответить]
| +3 +/– |
> библиотека загружается ровно один раз даже если ее использует 100 программ.
Зато с статической линковкой работает LTO. А с шареными либами - нет.
Нужно ли lto или лучше пару мегабайт сэкономить - каждый решает сам.
| |
|
5.23, Аноним (12), 12:32, 20/05/2025 [^] [^^] [^^^] [ответить]
| +/– |
> Зато с статической линковкой работает LTO. А с шареными либами - нет.
Ну как бы логично, нет? На то они и шареные.
| |
|
6.25, Аноним (-), 12:48, 20/05/2025 [^] [^^] [^^^] [ответить]
| +/– |
> Ну как бы логично, нет? На то они и шареные.
Конечно логично, я же об этом и написал.
Но то, что оно не пашет это недостаток этого самого шаренья. Просто все так расписывают преимущества shared libs, как будто у них нет недостатков.
А вот мне не жалко небольшого увеличения размера аппы ради небольшого увеличения производительности.
| |
|
7.31, Аноним (31), 14:37, 20/05/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
Если логика вашей программы настолько сильно упирается в скорость вызова какой-то функции из другой библиотеки, а не в IO, например, то либо статично компилируйтесь с этой библиотекой, либо чините компиляцию / меняйте компилятор.
| |
|
8.34, Аноним (34), 16:57, 20/05/2025 [^] [^^] [^^^] [ответить] | +/– | Так не пойдёт Байты всё равно надо откуда-то прочитать Количество байт от мето... текст свёрнут, показать | |
|
|
|
5.41, adolfus (ok), 22:23, 20/05/2025 [^] [^^] [^^^] [ответить]
| +/– |
Ничего вы по памяти не сэкономите. Загруженная ранее .so будет отображена полностью в ваше адресное пространство, даже если вы из нее используете маленькую функцию. Это в отношени кода. Плюс у вас будет отображение секций инициализированных данных и неинициализированных, даже если функция, которую вы вызываете, их не использует. Именно поэтому вместе с .so нормальные пакеты предоставляют .a, собранные из мелких объектных модулей, ни на какие другие не ссылающиеся. Это для тех, кто понимает, что такое динамическое связывание и чем оно отличается от статического.
Я пишу, в основном, математику и если заказчик не возражает, использую gsl, которую сам компилирую и собираю как в .so, так и в .a, так что разницу в призводительности и в отношении свободной памяти в куче (malloc) чувствую непосредственно.
| |
5.47, Аноним (-), 00:26, 21/05/2025 [^] [^^] [^^^] [ответить]
| +/– |
> Зато с статической линковкой работает LTO. А с шареными либами - нет.
> Нужно ли lto или лучше пару мегабайт сэкономить - каждый решает сам.
Как бы тебе сказать то? Вгрузить в RAM 10 инстансов кутей, допустим, никак не пару мегабайт экономии будет. Вот 200 мегов RAM - это еще может быть.
| |
|
|
3.14, Соль земли2 (?), 10:56, 20/05/2025 [^] [^^] [^^^] [ответить]
| +4 +/– |
> Статическая сборка хороша тем, что приложение использует меньше физической памяти и работает быстрее.
Извиняюсь, но как раз динамическая сборка нужна, чтобы динамический линковщик при открытии библиотеки взял уже загруженный в shared памяти файл библиотеки.
| |
|
4.50, adolfus (ok), 13:49, 23/05/2025 [^] [^^] [^^^] [ответить]
| +/– |
>> Статическая сборка хороша тем, что приложение использует меньше физической памяти и работает быстрее.
> Извиняюсь, но как раз динамическая сборка нужна, чтобы динамический линковщик при открытии
> библиотеки взял уже загруженный в shared памяти файл библиотеки.
Динамическая сборка годится только тогда, когда общая библиотека используется несколькими программами и в этом случае память, возможно, экономится. Кто-то первый загрузил и остальные уже используют загруженное, отображая библиотеку в свое адресное пространство.
"Единоличное" же использование общих библиотек одним приложением не имеет особого смысла, поскольку кроме этого приложения никакое другое этими библиотеками пользоваться не может и этому приложению в любом случае придется всякий раз их загружать и привязывать.
| |
|
3.15, Аноним (15), 10:57, 20/05/2025 [^] [^^] [^^^] [ответить]
| +/– |
Статическая сборка хороша как минимум тем, что приложение будет более-менее гарантированно работать, вот это её главный плюс. Идея разделяемых библиотек в линуксе с треском провалилась, в винде оно как-то криво-косо, но работает.
| |
|
4.16, Аноним (12), 11:37, 20/05/2025 [^] [^^] [^^^] [ответить]
| +6 +/– |
> Идея разделяемых библиотек в линуксе с треском провалилась
"Но шмель об этом не знает и продолжает летать..."
| |
|
5.18, Аноним (15), 12:12, 20/05/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
Да, до момента появления сообщения «у вас .so версии 2.11, а нужно 2.10» (или наоборот). Снапы с флатпаками от хорошей жизни выросли, видимо?
| |
|
6.21, Аноним (21), 12:25, 20/05/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
В Линуксе без проблем поставить рядом 2.10 и 2.11, без хелла.
| |
|
7.24, Аноним (15), 12:37, 20/05/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
Во-первых, и с хелпом проблема. Во-вторых, уже в этот момент концепция разделяемых библиотек похерена.
| |
7.29, Аноним (34), 14:14, 20/05/2025 [^] [^^] [^^^] [ответить]
| +/– |
Только в nixos и guix sd. Во всех остальных случаях начинаются танцы с контейнерами, и прочим и прочим
| |
|
8.32, Аноним (31), 14:43, 20/05/2025 [^] [^^] [^^^] [ответить] | +/– | Спешу вас расстроить, достаточно компилировать програмы с более точной версией б... текст свёрнут, показать | |
|
9.35, Аноним (34), 17:01, 20/05/2025 [^] [^^] [^^^] [ответить] | +/– | О титан, не слишком ли тяжёл небосвод, не устал ли его держать Согласен, что сд... текст свёрнут, показать | |
9.37, Аноним (36), 19:06, 20/05/2025 [^] [^^] [^^^] [ответить] | +/– | И насколько хорошо это работает мы можем посмотреть в том числе и по сабжевой но... текст свёрнут, показать | |
9.45, Аноним (42), 23:32, 20/05/2025 [^] [^^] [^^^] [ответить] | +/– | Пакетные менеджеры мешают т к не умеют ставить одновременно 2 разных минорных ве... текст свёрнут, показать | |
|
|
|
6.46, Аноним (42), 23:36, 20/05/2025 [^] [^^] [^^^] [ответить]
| +/– |
Снапы с флетпаками выросли сугубо от хорошей жизни менеджера, который ничего лучше не смог придумать.
Впрочем, линковка к точной версии библиотеки не спасёт от конфликта символов внутри процесса.
Если в windows линковка происходит к dllname.dll:funcname, то в линуксах просто к funcname или в лучшем случае к funcname:SYMVER... что не исключает возможности как одинаковых funcname, так и одинаковых funcname:SYMVER в разных процессах...
| |
|
5.20, Аноним (-), 12:25, 20/05/2025 [^] [^^] [^^^] [ответить]
| +/– |
> "Но шмель об этом не знает и продолжает летать..."
Да-да, особенно когда на каком-то копродистре вроде деба тебе срочно нужно обновить что-то чтобы исправить бесячий баг или дыру, а дебилианцы не считают это проблемой.
И вот тогда начинается веселье.
| |
|
4.51, adolfus (ok), 13:57, 23/05/2025 [^] [^^] [^^^] [ответить]
| +/– |
> Статическая сборка хороша как минимум тем, что приложение будет более-менее гарантированно
> работать, вот это её главный плюс. Идея разделяемых библиотек в линуксе
> с треском провалилась, в винде оно как-то криво-косо, но работает.
В никсах нет "разделяемых" библиотек, но есть совместно используемые объекты (shared object), которые иногда называются "общие библиотеки".
| |
|
3.28, Аноним (34), 14:12, 20/05/2025 [^] [^^] [^^^] [ответить]
| +/– |
>Выглядит это как тормоза и достигают эти тормоза нескольких секунд
Эм, а какого года выпуска у вас железо?
>что особенно заметно в интерактивных приложениях
Интерактивные приложения постоянно что-то вызывают. Очень маловероятно, что приложение с нуля загрузится в память целиком, со всеми иконками библиотеками и прочим
>котороые во время инициализации интерфейса выполняют десятки вызовов
Почему десятки? Вот смотрите, типовой современный сайт на php вызывает тысячи, может даже десятки тысяч файлов на один запрос. И вы всех этих тысяч файлов не увидите, для вас это займёт ну может сотню милисекунд. Так почему десктопные приложения у вас тогда тормозят несколько секунд?
| |
|
4.33, Аноним (31), 14:44, 20/05/2025 [^] [^^] [^^^] [ответить]
| +/– |
Человек наверное под виндой сидит, где кэш файловой системы по ощущениям постоянно выключен.
| |
4.52, adolfus (ok), 14:34, 23/05/2025 [^] [^^] [^^^] [ответить] | +/– |  HP Zbook c 32 Гбайт ОЗУ и ПП-диском Сайт кеширует в памяти содержимое всех этих... большой текст свёрнут, показать | |
|
|
2.19, OpenEcho (?), 12:18, 20/05/2025 [^] [^^] [^^^] [ответить]
| +/– |
> лучше бы запретили бы статическую сборку и не е***и бы мозги
Подрабатываете в НСА ?
| |
|
|