Sobes.tech
Junior — Middle

Hogyan történik a forrásfájlok fordítási szakasza Linuxon egy futtatható bináris fájlba?

sobes.tech MI

Válasz az MI-től

Linuxban a forrásfájlok (például C vagy C++ nyelven) fordítása futtatható bináris fájlba általában több lépésen keresztül történik:

  1. Előfeldolgozás — a preprocessor direktíváinak (#include, #define stb.) feldolgozása, ennek eredményeként kibővített forráskód keletkezik.
  2. Fordítás — a kibővített forráskód fordítása assembler kódra.
  3. Assemblerelés — az assembler kód konvertálása objektumfájlba (.o), amely gépi kódot tartalmaz, de még nincs összekapcsolva más modulokkal.
  4. Linkelés — egy vagy több objektumfájl és könyvtár összekapcsolása egyetlen futtatható fájlba.

Gcc használatával például a fordítás és linkelés parancsa:

gcc main.c -o myprogram

Ebben a gcc automatikusan végrehajtja az összes lépést: előfeldolgozás, fordítás, assemblerelés és linkelés, és létrehozza a myprogram nevű futtatható fájlt.