共有ライブラリは一般的には良くない
(lore.kernel.org)- Fedoraでclang/llvmが遅い理由は、ポリシー上ほかのパッケージと動的リンクしているため
→ これに対するLinus Torvaldsのコメント
"Fedoraにはそれをやらないでほしいです。共有ライブラリは一般的には良くありません。
この場合は(clang)、多くのオーバーヘッドが発生し、不要な依存関係と複雑さが生まれます。
ほとんどの共有ライブラリは実際にはバージョンセーフですらないので、まったく利点がありません"
"ディスク使用量は節約できるかもしれませんが、ディスクは安く、メモリ節約も実際にはマイナスです。
人々は『共有ライブラリは本質的に良い』と言いますが、実際にはそうではありません。多くの問題を生み出し、その利点はこれらの大きな欠点と比較して考える必要があります。
共有ライブラリが本当に有用なのは、真に標準化された基本ディストリビューションのシステムライブラリだけです。"
2件のコメント
昔、Windowsプログラミングをしていたときに、dll にするか exe の中に static ライブラリとして埋め込むか悩んでいた記憶がよみがえります。
最初は、ディスクやメモリ使用量も減らせてキャッシュ効率も上がる共有ライブラリの利用が好きだったのですが、後になるととても管理しきれず、不便なことが多すぎて、全部 static で埋め込むようになりました。
その後、体は楽になったものの、どこかずっと気持ちが落ち着かなかったのですが、トーバルズ兄貴の話を聞いて、ようやく気が楽になりました……。
最初から楽に生きればよかった。
そうですね。そして実務では、開発担当者が楽になることに加えて、環境ごとの問題に伴うサポート負担が軽減されるという点も大きいですね。