Junior — Middle
Kako se odvija faza kompilacije izvornh fajlova u izvršni binarni fajl u Linuxu?
sobes.tech АИ
Одговор од АИ
У Linux-у, компилација изворних датотека (на пример, у C или C++) у извршни бинарни датотеке обично пролази кроз неколико фаза:
- Препроцесирање — обрада директива препроцесора (#include, #define итд.), резултат је проширени изворни код.
- Компилација — трансформација проширеног изворног кода у асемблерски код.
- Асемблирање — превођење асемблерског кода у објектну датотеку (.o), која садржи машински код, али још није повезана са другим модулима.
- Линковање — спајање једне или више објектних датотека и библиотека у једну извршну датотеку.
Пример команде за компилацију и линковање помоћу gcc:
gcc main.c -o myprogram
Овде gcc аутоматски извршава све фазе: препроцесирање, компилацију, асемблирање и линковање, креирајући извршни фајл myprogram.