cross-posted from: https://lemmy.ml/post/1271953

This is for people who want to understand how programs get loaded under linux. In particular it talks about dynamically loaded x86 ELF files. The information you learn will let you understand how to debug problems that occur in your program before main starts up. Everything I tell you is true, but some things will be glossed over since they don’t take us toward our goal. Further, if you link statically, some of the details will be different. I won’t cover that at all. By the time you’re done with this though, you’ll know enough to figure that out for yourself if you need to.