GCC to skrót od GNU Compiler Collection, kompilatora C dla Linuksa.
$ gcc [options] [source files] [object files] [-o output file]
Główne opcje GCC:
opcja | opis |
---|---|
gcc -c | kompilować pliki źródłowe do plików obiektowych bez łączenia |
gcc -Dname[=value] | zdefiniować makro preprocesora |
gcc -fPIC | generuje kod niezależny od pozycji dla bibliotek współdzielonych |
gcc -glevel | generuje informacje debugowania do wykorzystania przez GDB |
gcc -Idir | dodaj katalog dołączania plików nagłówkowych |
gcc -llib | łącze z plikiem biblioteki |
gcc -Ldir | poszukaj w katalogu plików bibliotecznych |
gcc -o output file | zapisz wynik kompilacji do pliku wyjściowego |
gcc -Olevel | optymalizacja pod kątem rozmiaru kodu i czasu wykonania |
gcc -shared | wygeneruj plik obiektu współdzielonego dla biblioteki współdzielonej |
gcc -Uname | undefine makra preprocesora |
gcc -w | wyłączyć wszystkie komunikaty ostrzegawcze |
gcc -Wall | włączyć wszystkie komunikaty ostrzegawcze |
gcc -Wextra | włączyć dodatkowe komunikaty ostrzegawcze |
Kompilacji file1.c i file2.c i odwołują się do wyjścia execfile :
$ gcc file1.c file2.c -o execfile
Uruchom plik wyjściowy execfile :
$ ./execfile
Skompilować file1.c i file2.c bez powiązania:
$ gcc -c file1.c file2.c
Skompiluj myfile.c z informacjami debugowania i linkiem do pliku wyjściowego execfile :
$ gcc -g myfile.c -o execfile
Skompiluj myfile.c z włączonymi komunikatami ostrzegawczymi i linkiem do pliku wyjściowego execfile :
$ gcc -Wall myfile.c -o execfile
Skompiluj myfile.c i połącz z biblioteką statyczną libmath.a znajdującą się w / user / local / math do wyjściowego pliku execfile :
$ gcc -static myfile.c -L/user/local/math -lmath -o execfile
Skompiluj myfile.c z optymalizacją i linkiem do pliku wyjściowego execfile :
$ gcc -O myfile.c -o execfile