компілятор gcc
GСС - це вільно доступний оптимізуючий компілятор для мов C, C ++.
Програма gcc. запускається з командного рядка, представяляет собою надбудову над групою компіляторів. Залежно від розширень імен файлів, що передаються в якості параметрів, і додаткових опцій, gcc запускає необхідні препроцесори, компілятори, лінкери.
Файли з розширенням .cc або .C розглядаються, як файли на мові C ++, файли з розширенням .c як програми на мові C, а файли c розширенням .o вважаються об'єктними.
Щоб відкомпілювати вихідний код C ++, що знаходиться в файлі F.cc. і створити об'єктний файл F.o. необхідно виконати команду:
Опція -c означає «тільки компіляція».
Щоб скомпонувати один або кілька об'єктних файлів, отриманих з вихідного коду - F1.o. F2.o. - в єдиний виконуваний файл F. необхідно ввести команду:
gcc -o F F1.o F2.o
Опція -o задає ім'я файлу, що виконується.
Можна поєднати два етапи обробки - компіляцію і компонування - в один загальний етап за допомогою команди:
gcc -o F
Після компонування буде створений виконуваний файл F, який можна запустити з допомогою команди ./F
В процесі компонування дуже часто доводиться використовувати бібліотеки. Бібліотекою називають набір об'єктних файлів, згрупованих у єдиний файл і проіндексованих. Коли команда компонування виявляє деяку бібліотеку в списку об'єктних файлів для компонування, вона перевіряє, чи показують вже скомпоновані об'єктні файли виклики для функцій, визначених в одному з файлів бібліотек. Якщо такі функції знайдені, відповідні виклики зв'язуються з кодом об'єктного файлу з бібліотеки. Бібліотеки можуть бути підключені за допомогою опції виду -lname. В цьому випадку в стандартних каталогах, таких як / lib. / Usr / lib, / usr / local / lib буде проведено пошук бібліотеки в файлі з ім'ям libname.a. Бібліотеки повинні бути перераховані після вихідних або об'єктних файлів, що містять виклики до відповідних функцій.
Серед безлічі опцій компіляції і компоновки найбільш часто вживаються наступні: