Understanding C program Compilation Process

Поділитися
Вставка
  • Опубліковано 28 лип 2024
  • Understanding C program compilation step by step process.

КОМЕНТАРІ • 205

  • @fatihakbas8529
    @fatihakbas8529 6 років тому +13

    This is very clear explanation. Thank you very much for your effort!!

  • @ankitaanilm6793
    @ankitaanilm6793 7 років тому +26

    Exactly explained in a way it should be explained. Thanks buddy!

  • @abdelmajid9331
    @abdelmajid9331 Рік тому +1

    I like your way of explaining the c program compilation process, it is simple and easy. Thank you so much.

  • @beneelohimhub
    @beneelohimhub Рік тому +3

    Thank you so much, very easy to grasp and comprehensive, the diagrams makes everything looks very clear.Thank you.

  • @limitless1692
    @limitless1692 4 роки тому +3

    Very simple and clean explication
    Thank you very much :)

  • @sahildadia590
    @sahildadia590 8 років тому +38

    Perfect and Concise explanation. Best 6 minutes ever!

    • @HowTomakeitdone
      @HowTomakeitdone  8 років тому +2

      Thank you for appreciating
      Welcome to the channel

  • @raavi2945
    @raavi2945 3 роки тому +1

    Well done MAN... hopefully I got what I was looking for...

  • @mohamedhammoutene3413
    @mohamedhammoutene3413 5 років тому +7

    That's some good explanation right there !! GOOD JOB (y)

  • @iKsA8x
    @iKsA8x 3 роки тому +1

    Good explanation and clear slides.
    Thank you.

  • @UlyssesAza
    @UlyssesAza 6 років тому +2

    Straight to the point video.

  • @aflearningacademy
    @aflearningacademy 5 років тому

    thank you so much you save my time.

  • @utkarshkothimbire1484
    @utkarshkothimbire1484 3 роки тому

    Thank you, sir. Very nicely explained.

  • @urchmanernest991
    @urchmanernest991 11 місяців тому

    Very concise and clear explanation... Thank you!

  • @roeetoledano6242
    @roeetoledano6242 Рік тому

    explained amazingly! thank you.

  • @RyanMuzzey
    @RyanMuzzey Рік тому

    Great explanation, thank you!

  • @anupamac7958
    @anupamac7958 6 років тому +1

    Very well explained.. Thank-you

  • @danijelpirc2821
    @danijelpirc2821 3 роки тому

    Thank you. Quite good video and explanation.

  • @adityabarhanpurkar8762
    @adityabarhanpurkar8762 3 роки тому +1

    Best video about compilation stages...thank u

  • @ibrahimokmen1217
    @ibrahimokmen1217 Рік тому

    Clear explanation, thanks mate.

  • @vakhariyajay2224
    @vakhariyajay2224 2 роки тому +1

    Thank you very much. You are a genius. 👍 👍🔝🔝

  • @haseebahmad5853
    @haseebahmad5853 23 дні тому

    well explained. to point, just what needed

  • @prakharsrivastava3335
    @prakharsrivastava3335 7 років тому +1

    explained in a nice way !

  • @Dotto19
    @Dotto19 3 роки тому +2

    Very well explained l. Thank you brother

  • @nyctophilic1790
    @nyctophilic1790 4 роки тому +1

    the best and short explanation ever thankss

  • @prathmeshyennawar9547
    @prathmeshyennawar9547 2 роки тому

    Thank you for your nice and clear explanation 👍 😊

  • @hp8q
    @hp8q Місяць тому

    Thank you for the clear explanation

  • @abdoadel6254
    @abdoadel6254 5 місяців тому

    thank you man very helpfull tutorial

  • @nidhimavijyanti5537
    @nidhimavijyanti5537 Рік тому

    Thanks for your perfect explaination ☺️

  • @nulledape
    @nulledape 2 роки тому

    This video is excellent!

  • @krushngor2101
    @krushngor2101 5 років тому +5

    Looks like I am ready for my final. thanks man

  • @johnpaulchikwe9719
    @johnpaulchikwe9719 Рік тому

    Thanks for your precision

  • @IanoNjuguna
    @IanoNjuguna 2 роки тому

    Straight to the point.

  • @temidayoakinsola4935
    @temidayoakinsola4935 Рік тому

    Well explained! Thanks so much sir..

  • @enjoy1284
    @enjoy1284 6 років тому +1

    thankyou so much...i'm so good at programming but no one cud explain me this clear idea about compilation

    • @HowTomakeitdone
      @HowTomakeitdone  6 років тому

      glad to know that it was something helpful to you for understanding compilation.

    • @shahzaibakhtar5421
      @shahzaibakhtar5421 5 років тому

      kia ap mujay programming sikhae gi please

  • @austinmorara7954
    @austinmorara7954 Рік тому

    Thank you for the video.

  • @vicvic553
    @vicvic553 3 роки тому +3

    Could you help me, please? I am wondering about something - we need a compiler in order to translate a source code in C to binary code understandable for a computer. However, how a compiler is written? I mean, is it in C which is, at this moment, not understandable for a computer yet? I get the "big idea" which you presented, and want to say - thank you for this. However, I still feel that something is missing for completely understanding. I have heard somewhere that some C compilers are written in C - but how is it possible? A huge please, could you explain it to me?

    • @JesseOrmandMusic
      @JesseOrmandMusic Рік тому +1

      You could write a compiler for C that is written in C and then compile that with an existing compiler

  • @ajaykumar-wy6fb
    @ajaykumar-wy6fb Місяць тому

    I have one question
    What happened in linker stage if there is no libraries available?

  • @ayoubbouizou3836
    @ayoubbouizou3836 4 роки тому

    Thank U Easy explanation easy draws thnks

  • @omobolajiadex7447
    @omobolajiadex7447 2 роки тому

    This a very very clear explanation.

  • @Health660
    @Health660 9 років тому +4

    Thanks for sharing... Very useful :) n precise

  • @amiramiri4517
    @amiramiri4517 Рік тому

    Thank you!🍀

  • @solomonking7558
    @solomonking7558 3 роки тому +3

    Poco a Poco good stuff we need to link up

  • @winiwiw1069
    @winiwiw1069 7 років тому

    you are the best man

  • @yogaraj1524
    @yogaraj1524 6 років тому +1

    Good but video is going slowly.
    Make it crisp . everything is good.thank you very much sir

  • @0kumo1
    @0kumo1 7 років тому +3

    Thank you, good explanation.

  • @pablofraustro8235
    @pablofraustro8235 9 років тому

    thanks! useful video

  • @mayhsajju28
    @mayhsajju28 7 років тому +1

    a perfect short n precise explanation of what happens during compilation in c. kudos to you...

  • @brandm5176
    @brandm5176 3 роки тому

    Thanks a lot dude!

  • @navneetjoshi7858
    @navneetjoshi7858 8 років тому +1

    That was really good!

    • @HowTomakeitdone
      @HowTomakeitdone  8 років тому +2

      +Navneet Joshi Thanks Navneet
      Welcome to channel.

  • @RajVeer-hy9zf
    @RajVeer-hy9zf 7 років тому +1

    the explanation is very good n also in depth.thank u very much

  • @tamilmaranc
    @tamilmaranc 7 років тому

    these all the best terminologies to learn exactly in embedded domain

  • @boluakorede4463
    @boluakorede4463 Рік тому

    you’re blessed 👍🏼🔥

  • @amanx4479
    @amanx4479 3 роки тому

    Is it the same compilation process with c++?

  • @yogeshpatil186
    @yogeshpatil186 2 роки тому +1

    Thq sir u taught us in very deep

  • @donleqacker931
    @donleqacker931 6 років тому

    Good explanation!

  • @rafsanjanimuhammod309
    @rafsanjanimuhammod309 8 років тому

    Really nice one.
    Thankyou, Sir !!!

    • @HowTomakeitdone
      @HowTomakeitdone  8 років тому +1

      +Rafsanjani Muhammod You are welcome to channel.

  • @Cowwy
    @Cowwy Рік тому

    awesome explanation!!

  • @manasabr7295
    @manasabr7295 6 років тому +1

    Wow very good informationp

  • @-HarishkumarG
    @-HarishkumarG 3 роки тому +1

    In linker , You said it will link the code if we use the library but that was already happened in preprocessor right ?

    • @Reptil714
      @Reptil714 3 роки тому +1

      You might use what we call pre-compiled libraries in your code. These libraries are only available as object code (thus only as binary code, you have no access to the associated code lines). The preprocessor handles libraries for which the code is explicitly readable. So pre-compiled libraries are the kind that are handled by the linker.

  • @AjithkumarSekar
    @AjithkumarSekar 8 років тому +4

    Thank you for your awesome video sir.
    1)What is the need of linker when compiler replaces all the header file source code in the main program code? i.e as according to my knowledge, at the first phase of compilation itself all the other files are included and the they are converted into object file. so, the other files(source code ) will be already linked and there is no need for linker.
    please clarify me..

    • @HowTomakeitdone
      @HowTomakeitdone  8 років тому +3

      +Ajithkumar Sekar In first step header file will be include which don't contain actual content of library. It contains only signature of function not their definition.
      Linker is actual component which will link function definition with function calling statement.

    • @subham3613
      @subham3613 4 роки тому +1

      suppose there are multiple users coding program ,E.g. one is coding how to add and another one how to subtract and so on.Each one of them will have their own code and header files that runs separately.
      Linker link those files together to form 1 single code with all functionalities that those code were having into a single .exe(executable) file with all header files that are required.

  • @nithyavenkatchalan6892
    @nithyavenkatchalan6892 6 років тому +1

    thank you too

  • @suvashreepriyadarshinibisw8017
    @suvashreepriyadarshinibisw8017 3 роки тому

    Very well explained sir.

  • @zeinadesouky2683
    @zeinadesouky2683 11 місяців тому

    Thank you so much

  • @brandm5176
    @brandm5176 5 років тому

    Why before linker only preprocessor directive

  • @javadbaig9355
    @javadbaig9355 5 років тому

    Why here compiler is converting .c into assembly then binary...,, Cant we can convert .c into binary directly

  • @RollinShultz
    @RollinShultz 10 місяців тому

    Your voice sounds a lot like Kudvenkat who I studied for years.

  • @pabitrakb5291
    @pabitrakb5291 5 місяців тому

    Nice explanation ❤

  • @nomulakumar8530
    @nomulakumar8530 3 роки тому

    U did good job but u can do great sir

  • @sanjeetkumar3062
    @sanjeetkumar3062 8 років тому +1

    you said compiler has different modules, why did you make compiler block in compilation process? 1.02

    • @HowTomakeitdone
      @HowTomakeitdone  8 років тому

      +sanjeet kumar Compilation process actually contain these steps. Compiler is one of them.
      When we compile it doesn't directly convert into machine language. It does preprocessing, then conversion at last linking.
      So take it as Compilation process has different modules.

    • @sanjeetkumar3062
      @sanjeetkumar3062 8 років тому

      +HowTo So compiler only takes preprocessor input and convert into assembly language?

    • @HowTomakeitdone
      @HowTomakeitdone  8 років тому +1

      +sanjeet kumar yes it will take pre processed input and then convert it into assembly language.

  • @malourdesd
    @malourdesd 2 роки тому

    Appreciate it

  • @madhukrishna4371
    @madhukrishna4371 7 років тому +2

    nice explanation.. have some doubts
    1. can you please explain clearly what is use of assembler ?
    2.In which stage memory allocation will happen for variables ?

    • @HowTomakeitdone
      @HowTomakeitdone  7 років тому +3

      In the beginning there were only machine code, later came assemble language in which word has been assigned to operation codes ( add, sub, mul). These codes known as mnemonic.
      Still people felt difficulties in coding, then came high level language. Now what their developer did, they just though that assembler( who convert from assemble to machine code) is already available and if we can convert our high level code into assembly we no more need to worry about conversion to machine code.
      So they used assembler in their compiler internally.
      Memory allocation is done at compile or run time both. When we declare variable, they take memory at compile time but malloc function used to allocate memory at run time.

    • @sajidmehmood7655
      @sajidmehmood7655 4 роки тому

      assembler is transltor that convers assembly language into machine....that can easily undrstand by computer

  • @svetlinivanov6437
    @svetlinivanov6437 5 років тому

    Great video!

  • @anandkumarekbote8647
    @anandkumarekbote8647 6 років тому

    Good man

  • @varungupta2324
    @varungupta2324 6 років тому

    May I know from where did you made these awesome ppts?

  • @YoannBuzenet
    @YoannBuzenet 2 роки тому

    thank you

  • @thevishnuofficial
    @thevishnuofficial 5 років тому

    Screenshot kis book k h🧐

  • @wolfteamUpdates
    @wolfteamUpdates 8 років тому

    So every library must contain the object file .o so that linker can link
    to those object file present in library. So say, if object file is not
    present in the library on which our program is dependent, then the
    linker cannot link those libraries with our code. We cannot simply ship
    cpp files as a library. Am i right?

    • @HowTomakeitdone
      @HowTomakeitdone  8 років тому

      +Mojo Jojo yes. CPP files will not work. Only object files also not sufficient. You have to create library which includes that object files.

    • @wolfteamUpdates
      @wolfteamUpdates 8 років тому

      So there should be .lib file as well as .obj . If so then can you please differentiate between what kind of code obj contains and what .lib contains and why there are 2 different things. Thanks for reply

    • @HowTomakeitdone
      @HowTomakeitdone  8 років тому

      +Mojo Jojo .lib file contains .obj plus code to map address like if dynamic library is used then in that library some mechanism is there which will load library into memory and include address into compiled file.
      I hope it makes your concept clear.
      In case any query feel free to ask.

    • @wolfteamUpdates
      @wolfteamUpdates 8 років тому +1

      Thank you. After you video and comment, things starts to make sense.
      (you got a sub)

  • @arefsaran
    @arefsaran 3 роки тому

    Thank you

  • @hermannkumbong5955
    @hermannkumbong5955 8 років тому

    Very nice video. but still need a video to clearify me on the issue of linking , relocating and loading

    • @HowTomakeitdone
      @HowTomakeitdone  8 років тому

      Thanks for appreciatoins
      welcome to channel.....

  • @codeandtalk6
    @codeandtalk6 Рік тому +1

    Very nice explanation

  • @fahadkhanchughtai3279
    @fahadkhanchughtai3279 3 роки тому

    # is not a comment. It's called the preprocessor directive. Am I right?

  • @terfatyokula1761
    @terfatyokula1761 2 роки тому

    Nice job

  • @116_riyakamble9
    @116_riyakamble9 Рік тому

    very well explained'

  • @deveeshmusic5045
    @deveeshmusic5045 8 років тому

    Well done :)

  • @maheshparuchuri1268
    @maheshparuchuri1268 2 роки тому

    Super brother

  • @stachowi
    @stachowi Рік тому

    Very good video.

  • @Imran01123
    @Imran01123 5 років тому +1

    Zaberdast

  • @trojanhorse8278
    @trojanhorse8278 3 роки тому +7

    I think comments are removed in lexical analysis stage which is the part of compilation and not the preprocessor.

    • @balancemyself
      @balancemyself 2 роки тому

      Who does that analysis

    • @trojanhorse8278
      @trojanhorse8278 2 роки тому +1

      @@balancemyself which analysis are u referring to?

    • @lyrealcurriculum
      @lyrealcurriculum 5 місяців тому

      The lexical analysis you stated contrary to the preprocessor

  • @aasthashrivastava8972
    @aasthashrivastava8972 Рік тому

    your voice😍

  • @nomads7978
    @nomads7978 8 років тому

    Thanks a lot

  • @NickGhale
    @NickGhale 4 місяці тому

    Thank you Saar

  • @prashanthkumar0
    @prashanthkumar0 5 років тому

    well explained ... thanks

  • @sureshsingh9880
    @sureshsingh9880 2 роки тому

    good video

  • @jalil_mo
    @jalil_mo Рік тому

    Are you laughing while recording?
    Good video dude :))

  • @user-sw6ro7sf2k
    @user-sw6ro7sf2k 4 місяці тому

  • @Raviraj-tu5un
    @Raviraj-tu5un 3 роки тому

    Thanks

  • @AxelWerner
    @AxelWerner 7 років тому

    huh ?! a C compiler generates "assembly code" and not machine code (object code) directly ?!

    • @HowTomakeitdone
      @HowTomakeitdone  7 років тому +1

      Compiler directly generates machine code and assembly code is generated as an intermediate step.
      When we use compiler all we can see is object code. Assembly code is not saved on hard disk.

  • @chetanhabeeb5996
    @chetanhabeeb5996 6 років тому

    Good explanation
    Tq

  • @ececse
    @ececse Рік тому

    thankyou sir

  • @kanishfatima1654
    @kanishfatima1654 7 років тому +1

    I love your voice here ❤