Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Difference between .so and .so.x

what is the difference between *.so and *.so.x and what does X signify and why this is done in the first place ?

like image 743
KernelMonk Avatar asked Jun 06 '12 14:06

KernelMonk


People also ask

What is the difference between .so and so 1?

Yes, the ". 1" indicates the version number. This makes it possible to have multiple versions of the same library side-by-side, whereas the most common version has a link with no version number. If there is no need to distinguish between different versions, the version suffix might not be present.

What is the difference between shared and static library?

Static libraries, while reusable in multiple programs, are locked into a program at compile time. Dynamic, or shared libraries, on the other hand, exist as separate files outside of the executable file.

What does the number after .so mean?

Each file has a different number at the end of it. These numbers represent versions of the library. They're very important as it's these versions that determine the role of each file. They're two popular versioning schemes.

Is .so a dynamic library?

Shared libraries are also called dynamic libraries. These shared libraries are linked in at runtime by the dynamic linker available on the operating system. Shared libraries usually end with the . so extension — an example is libboost.5.6.so.


1 Answers

.so is a shared object, dynamically linked library. Usually there maybe multiple names for a dynamically linked library, most of the names being names for symbolic links to the remaining name, in these names .x stands for the major version of the library, or the full version number of the particular so

for example, libmylib.so.2 would be the filename for the second major interface revision of the dynamically linked library libmylib

like image 161
Alok Save Avatar answered Sep 20 '22 01:09

Alok Save