Тёмный

Курс молодого бойца в компилятор GCC (для языков С\С++) 

ProgramArt
Подписаться 4,3 тыс.
Просмотров 18 тыс.
50% 1

В этом видео вы узнаете что такое компилятор GCC. Мы скомпилируем вместе программу на языке Си. Узнаем какие бывают ключи компиляции, что это такое и как их использовать.
Подробнее о ключах компиляции GCC вы можете узнать здесь parallel.uran.ru/book/export/h...
Для большего погружения: Книга Артура Гриффитса - "GCC полное руководство"
Стандарты С++
-std=c++98 - C++98
-std=c++11 - C++11
-std=c++14 - C++14
-std=c++17 - C++17
-std=c++2a - C++20
Warnings:
-Wall - Выводит большинство предупреждений
-Wfloat-equal - Предупреждает о не безопасном сравнении
-Wsign-conversion или -Wsign-promo - Предупреждения преобразования signed в unsigned (и обратно)
-Wold-style-cast - Выводит C Style преобразования типов
-Warray-bounds - Доступ за пределы массива
-Wdiv-by-zero - Предупреждать о делении на 0
-Wdouble-promotion - Предупреждает о преобразовании с float на double
-Wbool-compire - Предупреждение о сравнении int с bool
Для сборки программы необходимо указать компилятору g++ файлы исходного кода, например команда g++ main.cpp скомпилирует исходный код файла main.cpp в исполняемый фаил a.out (если компилятору не указать имя выходного файла то по умолчанию именем будет a.out)
-o name - Имя выходного файла
Пример: Команда g++ -o myexe main.cpp скомпилирует фаил main.cpp в исполняемый фаил myexe.
Можно передавать несколько исходных файлов для сборки, например g++ -o myexe file1.cpp file2.cpp.
-c - Создание объектного файла
Пример: Для создания объектного файла необходимо указать компилятору ключи -c и -o: g++ -c -o main.o main.ppp, данной командой компилятор g++ создает объектный фаил main.o из файла main.cpp
Для сборки программы из объектных файлов необходимо указать компилятору в качестве входных параметров не файлы исходного кода а объектные файлы: g++ -o myexe foo.o main.o bar.o - создает программу из объектных файлов foo.o main.o bar.o
-I include_path - Указание каталога для поиска подключаемых файлов
Пример: g++ -o myexe -I/my/path/to/include main.cpp
-L library_path - Указание каталога для поиска библиотек
-l library - Указание конкретной библиотеки для линковки

Опубликовано:

 

20 май 2019

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 25   
@shyngyssamarkhanov5676
@shyngyssamarkhanov5676 4 года назад
Значит нужно было мне побольше узнать про GCC, забил в гуггле - нажал на видео. Первые две секунды не мог понять, откуда же я знаю этого человека. Салют с JunctionX, мы сидели почти что рядом. Эх, не зря же все таки говорят, что Земля круглая ;)
@programart_zp
@programart_zp 4 года назад
Рад слышать) надеюсь помогло видео)
@kreatifchk6354
@kreatifchk6354 3 года назад
Очень полезное видео, спасибо!
@programart_zp
@programart_zp 3 года назад
Спасибо
@user-is9fv5bi7x
@user-is9fv5bi7x 4 года назад
Спасибо за просвещение.
@programart_zp
@programart_zp 3 года назад
Благодярю за коментарий
@user-oi1zl6de8i
@user-oi1zl6de8i 4 года назад
Спасибо!
@cyrilanisimov
@cyrilanisimov 3 года назад
Автор в курсе, что он несмотря на расширение cpp компилирует код в си? Перед тем, как учить, надо бы самому разобраться с предметом.
@user-hc8zr1tv4h
@user-hc8zr1tv4h 4 года назад
Да добрый.
@aabdev
@aabdev Год назад
Смотреть на говорящую голову это обязательно для понимания работы GCC?
@Egor00f
@Egor00f 3 месяца назад
Это саме важное
@user-ci1hq4km8z
@user-ci1hq4km8z 3 месяца назад
Получается зная С можно создать Операционную систему?
@Egor00f
@Egor00f 3 месяца назад
Можно, но зачем
@user-zi7gw8sx8d
@user-zi7gw8sx8d Месяц назад
@@Egor00f Зная ассемблер ты можешь создать операционную систему, беря за основу например BIOS.
@user-zi7gw8sx8d
@user-zi7gw8sx8d Месяц назад
Зная бейсик ты тоже запросто можешь создать ОС. В любом случае любой язык, кроме чистого ассемблера, будет замедлять работу программы из-за избыточного кода. И пофигу что это будет: С или бейсик с фортраном. Можно написать такой бейсик, что уделает любую С в быстродействии. Ради интереса всё можно сделать! Было бы желание, а время найдётся.
@rostomany
@rostomany Год назад
Спасибо
@Nefor111
@Nefor111 4 года назад
Чаго? GCC - GNU C Compiler???? Автор покайся,тебе скидка будет! GNU Compiler COLECTION!
@swordoman2158
@swordoman2158 3 года назад
Первоначально проект назывался GNU C Compiler, но с развитием GCC, его стали называть GNU Compiler Collection просто потому он стал содержать в себе не только компилятор C, но и компиляторы C++, Java и прочие. Мне кажется, это несмертельно, если GCC назовут своим старым именем, хотя это и будет немного неуместным
@voronow3
@voronow3 Год назад
@@swordoman2158 не путайте термин GCC и исполнимый файл gcc, находящийся, например в /usr/bin каталоге
@swordoman2158
@swordoman2158 Год назад
@@voronow3 Конечно, это должно быть само собой разумеющимя
@aabdev
@aabdev Год назад
Что такое GNU?
@michaeljordan1283
@michaeljordan1283 2 года назад
gcc - gnu compiler collection (not gnu c compiler).
@andreyc6439
@andreyc6439 2 года назад
Скажите пожалуйста начинающему, что значит юайная вещь?
@fish9370
@fish9370 2 года назад
UI - user interface. Перевожу - вещей с графическим интерфейсом пользователя (что интерфейс графический, автор подразумевал)
@user-ci1hq4km8z
@user-ci1hq4km8z 3 месяца назад
GNU то есть нагибаю я понял))
Далее
Super gymnastics 😍🫣
00:15
Просмотров 51 млн
КАК УСТРОЕН EXE ФАЙЛ?
25:38
Просмотров 303 тыс.
why do header files even exist?
10:53
Просмотров 355 тыс.
Building GCC 13.1 (and beyond) for C and C++
18:30
Просмотров 4,8 тыс.
ты C++ РАЗРАБОТЧИК?) ага
12:04
Просмотров 223 тыс.
C++ Разработчик учит Python
28:01
Просмотров 485 тыс.