Awesome. I like that you break down actual assembly code to give real context instead of using some abstract diagram.
I am very grateful for the clarity in this video. It is a very rare commodity in this era of the Tech Bro Gimmicks
This channel is a hidden gem! thanks a lot for sharing the wealth of knowledge. I hope you will expand more in the future on EEE and CS topics.
We discussed this topic today in university lecture I had some doubts but you cleared them up . Thanks 👍
Thanks I think this video made it much clearer what these steps actually do.
It was really quick and straightforward about the compilation process. Thanks for making such an amazing video !!
The executable is partially statically linked with the IMPORT library of the C standard library. The library code itself is a dynamic library already loaded in memory and our executable has references too it that get resolved by the dynamic linker at loadtime(program gets loaded and it jumps to dynamic linker code)/runtime(program gets loaded and runs until it calls into code inside the dynamic library at which point the dynamic linker is invoked, in the case of runtime the reference won't get patched untill we try to call whatever it is we're referencing that is present in the dynamic library). You CAN tell the static linker to statically link with libc.lib(or whatever standard library implementation is being used by a compiler) but you need to specify it on the gcc command line. When linked statically the linker will go through the libc.lib(which is a collection of .obj files each of which has .symtab section) and if the linker finds an object file that contains the definition for data/code we've reference it will copy it's sections into new aggregate sections (it'll take the .text of our .obj file and .text section of the .obj file in .lib module and create a new .text section that contains the data within both .text sections of both .obj files and it will do that for all sections, such as .data, .rdata, etc...)
Excellent work...really made it easy to understand
I knew there would be a video like this somewhere... and here it is.
your explaination is better than my prof. Thank you!
By far the Best explanation ever...❤️❤️
Best video on the subject ty !!
Excellent work you got another subscriber and a like!!
Excellent tutorial man!
This is a great in depth walk through of the compilation to executable. My only critique (which is something I don't know much about) is the description of the process before the assembler is run, the Preprocessor. I know there's a lot to discuss on how it reads each library and macro and creates translation units, but my understanding is still a little muddy on it.
suscribed, nice microlecture
Excellent video, thank you so much!
This was really clear thank you.
Super useful video! Thank you very much!
@mrarcticaaa1101