Library (computing): Difference between revisions

Content deleted Content added
m seealsos
naming conventions
Line 38:
One of the largest disadvantages of dynamic linking is that the executables depend on the separately stored libraries in order to function properly.
If the library is deleted, moved, renamed or replaced with an incompatible version, the executable could malfunction.
ThisOn Windows this is commonly known as [[DLL-hell]].
 
===Naming===
All Windows <code>*.DLL</code> files are dynamically linked libraries.
*[[GNU]]/[[Linux]], [[Solaris Operating Environment|Solaris]] and [[BSD]] variants: <code>libfoo.so</code> files in folders like <code>/lib</code>, <code>/usr/lib</code> or <code>/usr/local/lib</code> are dynamically linked libraries. The filenames always start with <code>lib</code>, and end with <code>.so</code> (shared object), with an optional interface number, for example <code>libfoo.so.2</code> is the second interface revision of the library <code>libfoo</code>.
*[[MacOS X]] and upwards: libraries are named <code>libfoo.dylib</code>, with an optional interface number, such as <code>libfoo.2.dylib</code>.
*[[Microsoft Windows]]: <code>*.DLL</code> files are dynamically linked libraries. The interface revisions are encoded in the files, or abstracted away using [[component object model|COM-object]] interfaces.
 
== Shared Library ==