ELF Linking and Symbol Resolution

When you invoke cargo build , make , or any other native compilation, a lot of things happen. First, the compiler reads and checks the source code, and then it emits native machine code optimized for the platform. But after that, work isn&rsquo;t over. A program consists of many different parts (compilation units, a file in C or a crate in Rust). The compiler compiles each compilation unit…