By Roger Orr
Most C programmers use a linker to create the binaries they create, but to many this process is a black box. In this presentation I'll unpack some of the functionality of the linker, and how it relates to the C source code that you start with.
I’ll also be looking at the C++ One Definition Rule (ODR) and explaining the reasons behind some of the consequences of breaking it.
The purpose of this talk is to improve your understanding of the linking and loading process for C++ programs, focussing on Windows and Linux, so you will hopefully be better able to work with, rather than fight against, the linking process.
Some basic knowledge of writing and executing a C++ program will be assumed.