[О блоге] [наверх] [пред] [2020-06-26 20:16:10+03:00] [bd952e34ffc87a77229c00a9b94b25ae8d6e49a6]
Темы: [go]

Подтверждения мифов о динамической линковке на практике

https://drewdevault.com/dynlib.html
2303c62b98e13152ebdf19252f817f1370dc718b
http://harmful.cat-v.org/software/dynamic-linking/versioned-symbols

* Динамически слинкованные программы существенно дольше загружаются
* Они нифига не занимают ощутимо меньше места

Обновление всех программ, их перекомпиляция, если в зависимой библиотеке
есть какая-то проблема -- тоже не проблема на самом деле. И тут как раз
очень немаловажна быстрая компиляция: Go, C -- перекомпилировать на них
хоть всю систему могло бы занимать очень и очень мало времени.

Ну и лично я всегда повторял вопрос: как часто возникают уязвимости/баги
действительно вас затрагивающие и требующие немедленного обновления? За
целый год может вообще не появится ни одной.

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

Я в своих C библиотеках юзаю только статическую линковку. Собственно,
мудрые мира сего, в Go и в Plan 9 дают штатно только статическую
линковку.

    [оставить комментарий]
    комментарий 0:
    From: David Rabkin
    Date: 2020-06-27 18:04:19Z
    
    Вспоминается борьба перевода статических библиотек в динамические в середине
    нулевых. Вот буквально говорилось в компании: эти, продвинутые, пилят
    динамическую библиотеку, а те, отсталые,—статическую. Я был на стороне
    динамических, волей случая, но гордился отчаянно: я же умел использовать
    LD_LIBRARY_PATH! Сегодня я понимаю, какие это костыли. Но, что интересно,
    в индустрии АйОуТи, где я сейчас, в переходе с RTOS на Linux, те же споры.
    Динамичные напирают на экономию футпринта, статичные—на стабильность. А мне
    опять пригодилось умение оперировать LD_LIBRARY_PATH :-)
    
    комментарий 1:
    From: Sergey Matveev
    Date: 2020-06-28 10:55:31Z
    
    На Hacker News целые баталии на эту тему: https://news.ycombinator.com/item?id=23654353