DEV Community

Discussion on: The different files of C

manchicken profile image
Michael D. Stemle, Jr.

Very close. The .a is a static library, the .a stands for “archive.” It contains symbols which the linker can extract from the archive and insert into an executable as it is being built.

A .so file uses some sort of dynamic library loader (ELF in GNU/Linux) to load the library, and then the executable actually runs the symbol from the external file using that ELF subsystem.