July 2015
Intermediate to advanced
380 pages
10h 15m
English
A central part of any C program is the ability to link it to libraries that your OS provides. Linking is how you get additional features for your program that someone else created and packaged on the system. You’ve been using some standard libraries that are automatically included, but I’m going to explain the different types of libraries and what they do.
First off, libraries are poorly designed in every programming language. I have no idea why, but it seems language designers think of linking as something they just slap on later. Libraries are usually confusing, hard to deal with, can’t do versioning right, and end up being linked differently everywhere.
C is no different, but the way linking and libraries ...