94446


「*.dll」や「lib*.so」は共有ライブラリとのことですが、それぞれ仕様はありますか？  
例えば「*.dll」として仕様があり「HTML5仕様」のように「*.dll仕様」としてどこかで公開されていますか？  
それとも「*.dll」は単にこの拡張子を共有ライブラリとしてみなすという意味でしかなく、それぞれの仕様は、同じ「*.dll」でもそれぞれのプロジェクトごとに異なるのですか？


CC BY-SA 4.0
2023-04-08T02:50:24.743
94445
2023-04-10T08:48:45.927
2023-04-10T08:48:45.927
7886
7886
question
dll
「*.dll」や「lib*.so」は共有ライブラリとのことですが、それぞれ仕様はありますか？


.dllはWindowsで使われる共有ライブラリの拡張子です。Portable Executableフォーマットで定義されているようです。  
[Wikipedia: Portable
Executable](https://ja.wikipedia.org/wiki/Portable_Executable)  
[PE(Portable
Executable)ファイルフォーマットの概要](http://shopping2.gmobb.jp/htdmnr/www08/mcc/doc/pe.html)  
[Microsoft: PE 形式](https://learn.microsoft.com/ja-jp/windows/win32/debug/pe-
format)

lib.soはLinuxで使われる共有オブジェクトの拡張子です。Executable and Linkable Format
(ELF)フォーマットが使用されているようです。  
[実行ファイル形式のELFって何？](https://www.itmedia.co.jp/help/tips/linux/l0448.html)  
[Wikipedia: Executable and Linkable
Format](https://ja.wikipedia.org/wiki/Executable_and_Linkable_Format)


CC BY-SA 4.0
2023-04-08T03:13:34.730
94446
2023-04-08T03:13:34.730
39819
94445
answer