Покрокове керівництво. Компіляція машинної програми мовою C++ із командного рядка
Visual Studio включає командний рядок C і компілятор C++. Його можна використовувати для створення всіх елементів - від базових консольних додатків до додатків універсальної платформи Windows, класичних додатків, драйверів пристроїв і компонентів .NET.
У цьому покроковому посібнику наводяться інструкції зі створення програми мовою C++ у стилі " Hello, Wolrd " у текстовому редакторі з наступною компіляцією з командного рядка. Якщо ви хочете спробувати інтегроване середовище розробки Visual Studio замість використання командного рядка, див. покрокове керівництво. Робота з проектами та рішеннями (C++) або використання інтегрованого середовища розробки Visual Studio для класичних програм C++.
У цьому покроковому посібнику замість введення показаного коду можна використовувати власну програму мовою C++. Можна також використовувати приклад коду C++ з іншої статті довідки.
Необхідні компоненти
Для виконання цього покрокового посібника необхідно встановити Visual Studio та додаткове робоче навантаження Розробка настільних додатків на C++ або Build Tools командного рядка для Visual Studio.
Visual Studio інтегроване середовище розробки (IDE). Вона підтримує повнофункціональний редактор, диспетчери ресурсів, налагоджувачі та компілятори для багатьох мов та платформ. Доступні версії включають безкоштовний випуск Visual Studio Community Edition, і вони можуть підтримувати розробку на C і C++. Відомості про завантаження та інсталяцію Visual Studio див. у статті Встановлення підтримки C++ у Visual Studio
Build Tools для Visual Studio встановлюють лише засоби, бібліотеки та компілятори командного рядка, необхідні для збирання програм C та C++. Це ідеальний варіант для створення завдань та вправ, а встановлення виконується відносно швидко. Щоб встановити лише засоби командного рядка, знайдіть Build Tools для Visual Studio на сторінці завантаження Visual Studio.
Перш ніж виконати збірку програм C або C++ у командному рядку, переконайтеся, що ці засоби встановлені і до них можна отримати доступ з командного рядка. Visual C++ має складні вимоги до середовища командного рядка для пошуку використовуваних засобів, заголовків та бібліотек. Visual C++ не можна використовувати у простому вікні командного рядка без попередньої підготовки. На щастя, Visual C++ встановлює ярлики для запуску командного рядка розробника, на якому налаштовано середовище для збірок командного рядка. На жаль, імена ярликів командного рядка розробника та місця розташування відрізняються практично у всіх версіях Visual C++ і в різних версіях Windows. Перше завдання покрокового керівництва – знайти потрібний командний рядок.
Ярлик командного рядка розробника автоматично визначає правильні шляхи для компілятора та засобів, а також для всіх необхідних заголовків та бібліотек. Ці значення середовища необхідно задавати самостійно, якщо використовується звичайне вікно командного рядка. Для отримання додаткових відомостей див. розділ Використання набору інструментів MSVC з командного рядка. Рекомендується використовувати ярлик командного рядка розробника замість створення власного.
Відкриття командного рядка розробника
- Якщо ви інсталювали Visual Studio 2017 або пізнішої версії у Windows 10 або пізнішої версії, відкрийте меню "Пуск" і виберіть Всі програми. Прокрутіть вниз і відкрийте папку Visual Studio (Не додаток Visual Studio). Виберіть елемент Командний рядок розробника для VS, щоб відкрити вікно командного рядка. Якщо ви інсталювали Microsoft Visual C++ Build Tools 2015 у Windows 10 або пізнішої версії, відкрийте меню Пуск та виберіть Всі програми. Прокрутіть вниз і відкрийте папку Microsoft Visual C++ Build Tools. Виберіть елемент Командний рядок Native Tools x86 Visual C++ 2015, щоб відкрити вікно командного рядка. Також можна ввести командний рядок розробника у рядку пошуку у Windows і вибрати командний рядок, який відповідає встановленій версії Visual Studio. Відкрийте вікно командного рядка за допомогою ярлика.
- Потім переконайтеся, що командний рядок розробника Visual C++ правильно налаштований. У вікні командного рядка введіть cl і переконайтеся, що вихідні дані виглядають приблизно так:
C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise>cl Microsoft (R) C/C++ Optimizing Compiler Version 19.10.25017 для x86 Copyright (C) Microsoft Corporation. Всі права захищені. usage: cl [option. ] filename. [/ link linkoption. ]
Можливо, існують відмінності у поточному каталозі або номерах версій. Ці значення залежать від версії Visual C++ та інстальованих оновлень. Якщо наведений вище результат схожий на відображуваний, можна розпочинати складання програм C або C++ у командному рядку.
Примітка. Якщо під час виконання команди cl з'являється повідомлення про те, що "cl не розпізнається як внутрішня або зовнішня команда, виконувана програма або пакетний файл", або виникають помилки C1034 або LNK1104, річ у тому, що ви не використовуєте командний рядок розробника або щось не так з інсталяцією Visual C++.Для продовження необхідно буде виправити помилку.
Якщо ви не можете знайти ярлик командного рядка розробника або при введенні cl з'являється повідомлення про помилку, можливо, виникла проблема з інсталяцією Visual C++. Спробуйте переінсталювати компонент Visual C++ у Visual Studio або Microsoft Visual C++ Build Tools. Не переходьте до наступного розділу, доки команда cl не спрацює. Для отримання додаткових відомостей про встановлення Visual C++ та усунення несправностей див. у статті Установка Visual Studio.
Примітка. Залежно від версії Windows, встановленої на комп'ютері, та конфігурації системи безпеки може знадобитися правою кнопкою миші відкрити контекстне меню для ярлика командного рядка розробника та вибрати пункт Запуск від імені адміністратора, щоб успішно виконати складання та запуск програми, створеної в цьому покроковому посібнику.
Створення файлу вихідного коду мовою Visual C++ та його компіляція з командного рядка
- У вікні командного рядка розробника введіть md c:\hello , щоб створити каталог, а потім введіть cd c:\hello , щоб перейти до цього каталогу. У цьому каталозі створюються файл вихідного коду та скомпільована програма.
- У вікні командного рядка введіть notepad hello.cpp. Коли Блокнот запропонує створити файл, виберіть Так. Відкриється порожнє вікно Блокнота, в якому можна ввести код файлу hello.cpp.
- У вікні блокнота введіть такі рядки коду:
#include using namespace std; int main()
c:\hello>dir Volume in drive C не має label. Volume Serial Number is CC62-6545 Directory c:\hello 05/24/2016 5:36 PM . 05/24/2016 05:36 PM .. 05/24/2016 05:37 PM 115 hello.cpp 1 File(s) 115 bytes 2 Dir(s) 571,343,446,016 bytes free
Примітка. Якщо файл вихідного коду hello.cpp не відображається, переконайтеся, що поточний робочий каталог у командному рядку – це створений вами каталог C:\hello . Це має бути каталог, у якому ви зберегли файл вихідного коду. Також переконайтеся, що файл вихідного коду збережено з розширенням імені файлу .cpp , а не .txt . Якщо відкрити Блокнот із командного рядка за допомогою команди notepad hello.cpp , файл вихідного коду автоматично зберігається у поточному каталозі як файл .cpp . Якщо Блокнот відкрити іншим способом, його поведінка також буде іншою. За замовчуванням Блокнот додає розширення .txt нові файли при їх збереженні. Крім того, файли за замовчуванням зберігаються у каталозі Документи. Щоб зберегти файл із розширенням .cpp у Блокноті, виберіть Файл>Зберегти як. У діалоговому вікні Збереження файлу перейдіть до папки C:\hello елемент управління ієрархічного подання каталогів. Потім використовуйте список "Зберегти як тип", що розкривається., щоб вибрати усі файли (*.*). Введіть hello.cpp елемент управління "Поле введення" Ім'я файлу та натисніть кнопку Зберегти, щоб зберегти файл.
c:\hello>cl /EHsc hello.cpp Microsoft (R) C/C++ Optimizing Compiler Version 19.10.25017 для x86 Copyright (C) Microsoft Corporation. Всі права захищені. hello.cpp Microsoft (R) Incremental Linker Version 14.10.25017.0 Copyright (C) Microsoft Corporation. Всі права захищені. /out:hello.exe hello.obj
Примітка. Якщо ви отримуєте повідомлення про помилку, наприклад, "cl не розпізнається як внутрішня або зовнішня команда, виконувана програма або пакетний файл", помилка C1034 або LNK1104, командний рядок розробника налаштований неправильно. Щоб дізнатися, як вирішити цю проблему, поверніться до розділу Відкрити командний рядок розробника.
Примітка. Якщо ви отримуєте інше повідомлення про помилку або попередження компілятора або компонувальника, перевірте вихідний код, виправте помилки, збережіть його та знову запустіть компілятор. Щоб дізнатися про конкретні помилки, введіть номер помилки в полі пошуку.
Hello, world, від Visual C++!
Наступні кроки
Цей приклад Hello, World є найпростішою програмою C++. Реальні програми зазвичай мають файли заголовків, додаткові вихідні файли та посилання на бібліотеки.
Ви можете використовувати кроки, описані в цьому покроковому посібнику C++, для створення власного коду, щоб не вводити наведений приклад. Ці кроки дозволяють зібрати безліч прикладів коду C++, які можна знайти в інших місцях. Ви можете розмістити вихідний код і зібрати програми у будь-якому доступному для запису каталозі. За промовчанням інтегроване середовище розробки Visual Studio створює проекти у папці користувача у підпапці source\repos . Старі версії можуть розміщувати проекти в папці Documents\Visual Studio\Projects .
Щоб скомпілювати програму з додатковими файлами вихідного коду, введіть їх у командному рядку, наприклад:
cl /EHsc file1.cpp file2.cpp file3.cpp
Параметр командного рядка /EHsc вказує компілятору необхідність стандартної обробки винятків C++. Інакше створені винятки можуть призвести до незнищених об'єктів та витоків ресурсів. Для отримання додаткових відомостей див. у статті /EH (модель обробки винятків).
Якщо вказати додаткові вихідні файли, компілятор використовує перший вхідний файл для створення імені програми. У такому випадку виводиться програма з ім'ям file1.exe.Щоб змінити ім'я на program1.exe, додайте параметр компонувальника /out:
cl /EHsc file1.cpp file2.cpp file3.cpp /link /out:program1.exe
Щоб автоматично перехоплювати інші помилки програмування, рекомендується виконати компіляцію за допомогою порогу попередження /W3 або /W4:
cl /W4 /EHsc file1.cpp file2.cpp file3.cpp /link /out:program1.exe
У компіляторі cl.exe є багато додаткових параметрів. Їх можна застосовувати для створення, оптимізації, налагодження та аналізу коду. Щоб переглянути короткий список, введіть cl /? у командному рядку розробника. Можна також виконувати компіляцію та компонування окремо та застосовувати параметри компонувальника у складніших сценаріях складання. Для отримання додаткових відомостей про параметри та використання компілятора та компонувальника див. у довіднику зі збирання для C/C++.
Для налаштування та створення більш складних проектів у командному рядку можна використовувати NMAKE та файли makefile, MSBuild та файл проекту або CMake. Для отримання додаткових відомостей про використання цих засобів див. у розділах Довідник NMAKE, MSBuild та Проекти CMake у Visual Studio.
Мови C та C++ схожі, але мають відмінності. Компілятор MSVC використовує просте правило визначення мови, що використовується при компіляції коду. За промовчанням компілятор MSVC розглядає файли з розширенням .c як вихідні файли мовою С, а файли з розширенням .cpp - Як вихідні файли мовою С++. Якщо вказано параметр компілятора /TP, компілятор розглядатиме всі файли як вихідні файли мовою С++ незалежно від розширення.
Компілятор MSVC містить бібліотеку часу виконання C (CRT), яка відповідає стандарту ISO C99 із невеликими винятками. Код, що переноситься, зазвичай компілюється і виконується, як очікувалося.Деякі застарілі функції бібліотеки та кілька імен функцій POSIX не рекомендується використовувати в компіляторі MSVC.
Покроковий посібник. Компіляція програми на мові C з командного рядка.
Засоби збирання Visual Studio включають компілятор C, який можна використовувати для створення всіх базових консольних програм до повних класичних додатків Windows, мобільних додатків і т.д. з останніх мовних стандартів C, включаючи C11 та C17.
У цьому покроковому посібнику показано, як створити найпростішу програму на мові C у стилі " Hello, World " в текстовому редакторі з наступною компіляцією з командного рядка, див . командному рядку. Якщо ви хочете спробувати інтегроване середовище розробки Visual Studio замість використання командного рядка. рядки, див. покрокове посібник.
Необхідні компоненти
Для виконання цього покрокового посібника необхідно встановити Visual Studio або засоби збирання для Visual Studio та додаткову розробку класичних програм за допомогою робочого навантаження C++.
Visual Studio – це ефективне інтегроване середовище розробки, яке підтримує повнофункціональний редактор, диспетчери ресурсів, налагоджувачі та компілятори для багатьох мов та платформ.Відомості про ці компоненти, а також про завантаження та інсталяцію Visual Studio, включаючи безкоштовний випуск Visual Studio Community, див. у цій статті.
При використанні версії Build Tools для Visual Studio встановлюються лише програми командного рядка, бібліотеки та компілятори, необхідні для збирання програм на C та C++. Це ідеальний варіант для створення завдань та вправ, а установка виконується відносно швидко. завантажте Build Tools для Visual Studio на сторінці завантаження Visual Studio, а потім запустіть інсталятор. навантаження C++ (у попередніх версіях Visual Studio виберіть робоче навантаження коштів складання C++ та натисніть кнопку "Встановити".
При встановленні засобів у командному рядку використовується інший засіб, який використовується для створення програми C або C++, має складні вимоги до середовища командного рядка для пошуку інструментів, заголовків та бібліотек, які він використовує. Неможливо використовувати MSVC у звичайному вікні командного рядка без деякої підготовки. командного рядка розробника, що є звичайним вікном командного рядка, в якому задані всі необхідні змінні середовища. відрізняються практично в кожній версії Visual Studio та в різних версіях Windows. покрокового керівництва знайти потрібний ярлик.
Ярлик командного рядка розробника автоматично визначає правильні шляхи для компілятора та засобів, а також для всіх необхідних заголовків та бібліотек. Деякі з цих значень відрізняються кожної конфігурації сборки. Якщо ви не використовуєте жодного з ярликів, ці значення середовища необхідно задати самостійно. Для отримання додаткових відомостей див. розділ Використання набору інструментів MSVC з командного рядка. Так як налаштовувати середовище розробки складно, рекомендується використовувати ярлик командного рядка розробника замість створення власного.
Ці інструкції залежать від версії Visual Studio. Щоб ознайомитися з документацією за версією Visual Studio, використовуйте селектор Версія. Він знаходиться у верхній частині змісту на цій сторінці.
Відкриття командного рядка розробника у Visual Studio 2022
Якщо ви інсталювали Visual Studio 2022 у Windows 10 або пізнішої версії, відкрийте меню "Пуск" і виберіть Всі програми. Прокрутіть вниз і відкрийте папку Visual Studio 2022 (Не додаток Visual Studio 2022). Виберіть елемент Командний рядок розробника для VS 2022, щоб відкрити вікно командного рядка.
Відкриття командного рядка розробника у Visual Studio 2019
Якщо ви інсталювали Visual Studio 2019 у Windows 10 або пізнішої версії, відкрийте меню "Пуск" і виберіть Всі програми. Прокрутіть вниз і відкрийте папку Visual Studio 2019 (Не додаток Visual Studio 2019). Виберіть елемент Командний рядок розробника для VS 2019, щоб відкрити вікно командного рядка.
Відкриття командного рядка розробника у Visual Studio 2017
Якщо ви інсталювали Visual Studio 2017 у Windows 10 або пізнішої версії, відкрийте меню "Пуск" і виберіть Всі програми. Прокрутіть вниз і відкрийте папку Visual Studio 2017 (Не додаток Visual Studio 2017). Виберіть елемент Командний рядок розробника для VS 2017, щоб відкрити вікно командного рядка.
Відкриття командного рядка розробника у Visual Studio 2015
Якщо ви інсталювали Microsoft Visual C++ Build Tools 2015 у Windows 10 або пізнішої версії, відкрийте меню "Пуск" і виберіть Всі програми. Прокрутіть вниз і відкрийте папку Microsoft Visual C++ Build Tools. Виберіть елемент Командний рядок Native Tools x86 Visual C++ 2015, щоб відкрити вікно командного рядка.
Якщо ви використовуєте іншу версію Windows, знайдіть у меню "Пуск" або на початковій сторінці папку Visual Studio, що містить ярлик командного рядка розробника. Також можна ввести командний рядок розробника у рядку пошуку у Windows і вибрати командний рядок, який відповідає встановленій версії Visual Studio. Відкрийте вікно командного рядка за допомогою ярлика.
Потім переконайтеся, що командний рядок розробника правильно налаштовано. У командному рядку введіть cl (або CL , регістр не має значення для імені компілятора, але має значення для параметрів компілятора). Результат має виглядати так.
C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise>cl Microsoft (R) C/C++ Optimizing Compiler Version 19.10.25017 для x86 Copyright (C) Microsoft Corporation. Всі права захищені. usage: cl [option. ] filename. [/ link linkoption. ]
Залежно від версії Visual Studio та встановлених оновлень можуть бути відмінності у поточному каталозі чи номерах версій. Якщо наведений вище результат схожий на відображуваний, можна розпочинати складання програм C або C++ у командному рядку.
Якщо ви отримуєте помилку, наприклад "cl", не розпізнається як внутрішня чи зовнішня команда, операбельна програма чи пакетний файл", помилка C1034 або помилка LNK1104 під час виконання команди cl, то при встановленні Visual Studio ви не використовуєте командний рядок розробника або щось не так. Для продовження необхідно буде виправити помилку.
Якщо ви не можете знайти ярлик командного рядка розробника або повідомлення про помилку під час введення cl , може виникнути проблема з інсталяцією Visual Studio. При використанні Visual Studio 2017 або пізнішої версії спробуйте перевстановити робоче навантаження Розробка класичних додатків на C++ за допомогою інсталятора Visual Studio. Докладніші відомості див. у статті Довідка про встановлення засобу С++ у Visual Studio. Також можна перевстановити Build Tools зі сторінки Завантаження Visual Studio. Не переходьте до наступного розділу, доки команда cl не спрацює. Щоб отримати додаткові відомості про встановлення Visual Studio та усунення несправностей, див. Установка Visual Studio.
Залежно від версії Windows, встановленої на комп'ютері, та конфігурації системи безпеки може знадобитися правою кнопкою миші відкрити контекстне меню для ярлика командного рядка розробника та вибрати пункт Запуск від імені адміністратора, щоб успішно виконати складання та запуск програми, створеної в цьому покроковому посібнику.
Створення файлу вихідного коду мовою C та його компіляція з командного рядка
- У вікні командного рядка розробника введіть cd c:\ , щоб змінити поточний робочий каталог на корінь диска C:. Потім введіть md c:\hello , щоб створити каталог, і введіть cd\:hello , щоб перейти до цього каталогу. У цьому каталозі будуть вихідний файл та скомпільована програма.
- У командному рядку розробника введіть команду notepad hello.c. У діалоговому вікні блокнота з оповіщенням виберіть Так, щоб створити файл hello.c у робочій папці.
- У вікні блокнота введіть такі рядки коду:
C:\hello>dir Volume in drive C не має label. Volume Serial Number є CC62-6545 Directory of C:\hello 10/02/2017 3:46 PM . 10/02/2017 03:46 PM .. 10/02/2017 03:36 PM 143 hello.c 1 File(s) 143 bytes 2 Dir(s) 514,900,566,016 bytes free
c:\hello>cl hello.c Microsoft (R) C/C++ Optimizing Compiler Version 19.10.25017 для x86 Copyright (C) Microsoft Corporation. Всі права захищені. hello.c Microsoft (R) Incremental Linker Version 14.10.25017.0 Copyright (C) Microsoft Corporation. Всі права захищені. /out:hello.exe hello.obj
Примітка. Якщо ви отримуєте повідомлення про помилку, наприклад, "cl не розпізнається як внутрішня або зовнішня команда, виконувана програма або пакетний файл", помилка C1034 або LNK1104, командний рядок розробника налаштований неправильно. Щоб дізнатися, як вирішити цю проблему, поверніться до розділу Відкрити командний рядок розробника. Якщо ви отримуєте інше повідомлення про помилку або попередження компілятора або компонувальника, перевірте вихідний код, виправте помилки, збережіть його та знову запустіть компілятор. Щоб дізнатися про конкретні помилки, введіть номер помилки в полі пошуку вгорі цієї сторінки.
Hello, World! Це природний C program compiled on command line.
Наступні кроки
Цей приклад Hello, World є найпростішою програмою C. Реальні програми виконують корисні дії та мають файли заголовків, додаткові вихідні файли та посилання на бібліотеки.
Ви можете використовувати кроки, описані в цьому покроковому посібнику C, для створення власного коду, щоб не вводити наведений приклад. Ви також можете виконати складання різних прикладів коду на C, які можна знайти в інших місцях. Щоб скомпілювати програму з великими файлами вихідного коду, введіть їх у командному рядку:
cl file1.c file2.c file3.c
Компілятор виводить програму з ім'ям file1.exe . Щоб змінити ім'я program1.exe , додайте параметр компонувальника /out:
cl file1.c file2.c file3.c /link /out:program1.exe
Щоб автоматично перехоплювати інші помилки програмування, рекомендується виконати компіляцію за допомогою порогу попередження /W3 або /W4:
cl /W4 file1.c file2.c file3.c /link /out:program1.exe
Компілятор cl.exe має багато інших параметрів, які можна застосовувати для створення, оптимізації, налагодження та аналізу коду. Щоб переглянути короткий список, введіть cl /? у командному рядку розробника. Можна також виконувати компіляцію та компонування окремо та застосовувати параметри компонувальника у складніших сценаріях складання. Додаткові відомості про параметри та використання компілятора та компонувальника див. у довіднику зі зборки для C/C++.
Для налаштування та створення більш складних проектів у командному рядку можна використовувати NMAKE та файли makefile або MSBuild та файли проекту. Щоб отримати додаткові відомості про використання цих засобів, див. Довідник NMAKE та MSBuild.
Мови C та C++ схожі, але мають відмінності. Компілятор Microsoft C/C++ (MSVC) використовує просте правило визначення мови, що використовується при компіляції коду. За промовчанням компілятор MSVC розглядає всі файли з розширенням .c як вихідні коди мовою С, а файли з розширенням .cpp як вихідні коди мовою С++. Якщо вказано параметр компілятора /TC, компілятор розглядатиме всі файли як вихідні коди мовою С незалежно від розширення.
За умовчанням MSVC сумісна зі стандартами ANSI C89 та ISO C99, але не суворо відповідає. У більшості випадків код, що переноситься на мові C, буде компілюватися і виконуватися належним чином. Компілятор забезпечує додаткову підтримку змін ISO C11/C17. Щоб виконати компіляцію за допомогою C11/C17, використовуйте прапор компілятора /std:c11 або /std:c17 . Для підтримки C11 та C17 потрібна Windows SDK 10.0.20201.0 або пізніша версія. Рекомендовано використовувати Windows SDK 10.0.22000.0 або пізнішу версію. Останню версію пакета можна завантажити на сторінці Windows SDK. Щоб отримати додаткові відомості та інструкції з інсталяції та використання цього SDK для розробки на мові C, див. розділ Встановлення підтримки C11 та C17 у Visual Studio.
Деякі функції бібліотеки та імена функцій POSIX не рекомендуються в компіляторі MSVC. Функції підтримуються, але найкращі імена змінилися. Додаткові відомості див. у статтях Опції безпеки в CRT та Попередження компілятора (рівень 3) C4996.
Як скомпілювати C у командному рядку Windows?
Розглянемо створення першої найпростішої програми мовою Сі за допомогою компілятора GCC, який на сьогоднішній день є одним з найбільш популярних компіляторів для Cі і який доступний для різних платформ. Більш подібну інформацію про GCC можна отримати на офіційному сайті проекту https://gcc.gnu.org/.
Набір компіляторів GCC розповсюджується у різних версіях.Для Windows однією з найпопулярніших версій є пакет засобів для розробки від некомерційного проекту MSYS2. Слід зазначити, що для MSYS2 потрібна 64-бітна версія Windows 7 і вище (тобто Vista, XP і попередні версії не підходять)
Отже, завантажимо програму встановлення MSYS2 з офіційного сайту MSYS2:
Після завантаження запустимо програму встановлення:
На першому кроці установки буде запропоновано встановити каталог установки. За замовчуванням це каталог C:\msys64:
Залишимо каталог установки за замовчуванням (за бажанням можна змінити). На наступному кроці встановлюються налаштування для ярлика меню Пуск, і потім власне буде зроблено установку. Після завершення встановлення нам відобразити фінальне вікно, в якому натиснемо кнопку Завершити
Після завершення інсталяції запуститься консольна програма MSYS2.exe. Якщо з якихось причин воно не запустилося, то в папці установки C:/msys64 треба знайти файл usrt_64.exe:
Тепер нам треба встановити власне набір компіляторів GCC. Для цього введемо в цьому додатку таку команду:
pacman -S mingw-w64-ucrt-x86_64-gcc
Для керування пакетами MSYS2 використовує пакетний менеджер Packman. І ця команда каже пакетному менелжеру packman встановити пакет mingw-w64-ucrt-x86_64-gcc , який представляє набір компіляторів GCC (назва пакета, що встановлюється, вказується після параметра -S ).
і після завершення встановлення ми можемо розпочинати програмування мовою Сі. Якщо ми відкриємо каталог установки і зайдемо в ньому в папку C:\msys64\ucrt64\bin, то знайдемо там всі необхідні файли компіляторів:
Зокрема, файл gcc.exe таки представлятиме компілятор для мови Сі.
Для спрощення запуску компілятора ми можемо додати шлях до нього в Змінні середовища. Для цього можна у вікні пошуку Windows ввести "зміна змінних середовища поточного користувача":
Нам відкриється вікно Змінних середовищ:
І додамо шлях до компілятора C:\msys64\ucrt64\bin:
Щоб переконатися, що набір компіляторів GCC успішно встановлений, введемо таку команду:
У цьому випадку нам має відобразитися версія компіляторів
Створення першої програми
Отже, компілятор встановлений і тепер ми можемо написати першу програму. Для цього буде потрібно будь-який текстовий редактор для набору вихідного коду. Можна взяти поширений редактор Visual Studio Code або навіть вбудований блокнот.
Отже, створимо на жорсткому диску папку вихідних файлів. А в цій папці створимо новий файл, який назвемо hello.c.
У моєму випадку файл hello.c знаходиться у папці C:\c.
Тепер визначимо у файлі hello.c найпростіший код, який виводитиме рядок на консоль:
#include // підключаємо заголовний файл stdio.h int main(void) // визначаємо функцію main < // початок функції printf("Hello METANIT.COM!\n"); // Виводимо рядок на консоль return 0; // виходимо з функції >// кінець функції
Для виведення рядка на консоль необхідно підключити потрібний функціонал. Для цього на початку файлу йде рядок
Директива include включає заголовний файл stdio.h, який містить визначення функції printf, яка потрібна для виведення рядка на консоль.
Далі йде визначення функції int main (void). Функція main повинна бути присутня в будь-якій програмі на Сі, з неї власне і починається виконання програми.
Ключове слово int у визначенні функції int main (void) свідчить, що функція повертає ціле число. А слово void у дужках вказує, що функція не набирає параметрів.
Тіло функції main укладено у фігурні дужки <>. У тілі функції відбувається виведення рядка на консоль за допомогою функції printf, в яку передається рядок "Hello METANIT.COM!".
Наприкінці здійснюємо вихід із функції за допомогою оператора return. Так як функція повинна повертати ціле число, то після return вказується число 0. Нуль використовується як індикатор успішного завершення програми.
Після кожної дії у функції ставляться крапка з комою.
Тепер скомпілюємо цей файл. Для цього відкриємо командний рядок Windows та спочатку за допомогою команди cd перейдемо до папки з вихідним файлом:
Щоб скомпілювати вихідний код, необхідно компілятору gcc передати як параметр файл hello.c:
Після цього буде скомпілюваний виконуваний файл, який у Windows за умовчанням називається a.exe. І ми можемо звернутися до цього файлу
і в цьому випадку консоль виведе рядок "Hello METANIT.COM!", Як і прописано в коді.
Варто зазначити, що ми можемо перевизначити ім'я файлу, що компілюється, за допомогою прапора -o і передавши йому ім'я файлу, в який буде компілюватися програма. Наприклад:
gcc hello.c -o hello.exe
У цьому випадку програма буде компілюватися у файл hello.exe, який ми також запустити.
Щоб не доводилося вводити дві команди: одну для компіляції програми та іншу для її запуску ми можемо об'єднати команди:
gcc hello.c -o hello.exe & hello
Ця команда спочатку компілює код файлу hello.exe, а потім відразу запускає його.
