Статическое связывание, похоже, не очень нравится в мире Linux. Вот мой дубль.
Люди, которые не видят привлекательности статического связывания, обычно работают в области ядра и операционной системы более низкого уровня. Многие разработчики * nix библиотек потратили целую жизнь на решение неизбежных проблем, связанных с попыткой связать сотню постоянно меняющихся библиотек - задача, которую они выполняют каждый день. Взгляните на автоинструменты, если вы хотите узнать, какие сальто они могут выполнять.
Но никто не должен тратить на это большую часть своего времени. Статическое связывание продвинет вас далеко от буферизации библиотеки. Разработчик может обновить зависимости своего программного обеспечения в соответствии с расписанием программного обеспечения, вместо того, чтобы быть вынужденным делать это в момент появления новых версий библиотеки. Это важно для ориентированных на пользователя приложений со сложными пользовательскими интерфейсами, которым необходимо управлять потоком многих библиотек более низкого уровня, от которых они неизбежно зависят. И именно поэтому я всегда буду фанатом статических ссылок. Если вы можете статически связывать кросс-скомпилированный переносимый код C и C ++, вы в значительной степени сделали мир устрицей, поскольку сможете быстрее доставлять сложное программное обеспечение для широкого спектра постоянно растущих устройств в мире.
В этом есть много разногласий, с другой точки зрения, и приятно, что программное обеспечение с открытым исходным кодом учитывает их все.