Sistem de operare (OS) Linux / Unix și limbaj C -. "Frați bliznentsy" Să ne amintim că limbajul de programare C a fost creat (D.Ritchi, 1972), în special pentru scrierea Unix OS, și de atunci, și sistemul Unix „canonic“, care funcționează, și toate clonele sale și sisteme de operare similare sunt scrise în C. Prin urmare, în toate versiuni de Unix și sistemele Unix, compilatorul C, în majoritatea cazurilor, sunt incluse în sistemul de livrare.
Unul dintre primele produse software create de proiectul GNU, așa cum a fost compilator C open source. Acest compilator este inclus în furnizarea de toate versiunile sistemului de operare Linux.
Astfel, mediul în care am efectuat practica de laborator vă oferă 4 compilator pentru a alege de la:- cc - un compilator C standard;
- c ++ - standard de compilator C ++;
- GCC - GNU C-compilator limba;
- g ++ - GNU C ++ compilator.
Moduri de a rula marea majoritate a opțiunilor toate aceste compilatoare sunt identice, alegerea unui compilator se reflectă numai pe numele comenzii. Suntem în pregătirea de laborator practice de utilizare compilator GCC. Prin urmare, în exemplele de mai jos, vom vorbi despre asta.
compilator C, realizează ca o adevărată compilare - traducere de cod sursă în limbaj mașină, rezultând într-un modul de obiect și editarea contactelor - asamblarea mai multor module obiect (inclusiv, și biblioteca) executabil.
Fișierele cu programul C-sursă trebuie să aibă extensia .c. de exemplu: hello.c. Rezultatul compilarea este un fișier care conține un modul de obiect și numele său se potrivește cu numele modulului sursei și extinderea - .o. de exemplu: hello.o. Pentru fișierele care conțin executabil modul de expansiune standard nu există. La întocmirea programului, care constă dintr-un singur modul de sursă, modulul obiect este șters automat după crearea unui compilator modul executabil.
Compilatorul format comun de comandă apel este după cum urmează (în compilarea Linux):
Cele mai frecvent utilizate opțiuni de compilare după cum urmează:
Se suprimă faza modifica conexiunile creează un modul obiect pentru fiecare modul de cod sursă enumerate în parametrii apelului. Outfile cu această opțiune nu este specificată. Această opțiune poate fi utilizată împreună cu opțiunea -I
Compilarea și editarea link-uri. Se creează un modul obiect pentru fiecare modul de cod sursă enumerate în parametrii de apel și care au extensia .c. Fișierele cu extensia .c sunt considerate ca module sursă și compilat; fișiere cu extensia .o. sunt tratate ca obiect module și conectat la editarea link-uri. Parametrul fișierieșire specifică numele fișierului executabil. Această opțiune poate fi utilizată împreună cu opțiuni -L. -l. -I.