Constructing a library
You can include static and shared libraries in your C and C++ applications.
Compiling and linking a library describes how to compile your source files into object files for inclusion in a library, how to link a library into the main program, and how to link one library into another.
Initializing static objects in libraries (C++) describes how to use priorities to control the order of initialization of objects across multiple files in a C++ application.