Ядро Linux — ядро операционной системы, соответствующее стандартам POSIX, составляющее основу операционных систем семейства Linux, а также ряда операционных систем для мобильных устройств, в том числе Android, Tizen, KaiOS. Разработка кода ядра была начата финским студентом Линусом Торвальдсом в 1991 году, на его имя зарегистрирована торговая марка «Linux».
Linux — семейство Unix-подобных операционных систем на базе ядра Linux, включающих тот или иной набор утилит и программ проекта GNU, и, возможно, другие компоненты. Как и ядро Linux, системы на его основе, создаются и распространяются в соответствии с моделью разработки свободного и открытого программного обеспечения. Linux-системы распространяются в основном бесплатно в виде различных дистрибутивов — в форме, готовой для установки и удобной для сопровождения и обновлений, и имеющих свой набор системных и прикладных компонентов, как свободных, так и проприетарных.
Компоновщик — инструментальная программа, которая производит компоновку («линковку»): принимает на вход один или несколько объектных модулей и собирает из них исполняемый или библиотечный файл-модуль.
Объе́ктный мо́дуль — файл с промежуточным представлением отдельного модуля программы, полученный в результате обработки исходного кода компилятором. Объектный файл содержит в себе особым образом подготовленный код, который может быть объединён с другими объектными файлами при помощи редактора связей (компоновщика) для получения готового исполнимого модуля либо библиотеки.
ELF — формат двоичных файлов, используемый во многих современных UNIX-подобных операционных системах, таких как FreeBSD, Linux, Solaris и др.
MinGW (англ. Minimalist GNU for Windows), ранее mingw32 — набор инструментов разработки программного обеспечения для создания приложений под Windows. Включает в себя компилятор, родной программный порт GNU Compiler Collection (GCC) под Windows вместе с набором свободно распространяемых библиотек импорта и заголовочных файлов для Windows API. В MinGW включены расширения для библиотеки времени выполнения Microsoft Visual C++ для поддержки функциональности C99. Поддерживает стандарт C++11.
GNU Debugger — переносимый отладчик проекта GNU, который работает на многих UNIX-подобных системах и умеет производить отладку многих языков программирования, включая Си, C++, Free Pascal, FreeBASIC, Ada, Фортран и Rust. GDB — свободное программное обеспечение, распространяемое по лицензии GPL.
GNU Compiler Collection — набор компиляторов для различных языков программирования, разработанный в рамках проекта GNU. GCC является свободным программным обеспечением, распространяется фондом свободного программного обеспечения (FSF) на условиях GNU GPL и GNU LGPL и является ключевым компонентом GNU toolchain. Он используется как стандартный компилятор для свободных UNIX-подобных операционных систем.
Проект GNU — проект по разработке свободного программного обеспечения (СПО), является результатом сотрудничества множества отдельных проектов. Проект был запущен известным программистом и сторонником СПО Ричардом Столлманом 27 сентября 1983 года в Массачусетском технологическом институте. Изначальной целью проекта было «разработать достаточно свободного программного обеспечения <…>, чтобы можно было обойтись без программного обеспечения, которое не является свободным». Чтобы этого достичь, проект в 1984 году приступил к разработке операционной системы GNU. Эта цель была достигнута в 1992 году, когда последний пробел в ОС GNU — ядро системы — был заполнен сторонней разработкой, ядром Linux, которое было выпущено как свободное программное обеспечение в соответствии с лицензией GNU GPL v2.
Autoconf — утилита для создания конфигурационных скриптов (configure
), которые автоматически настраивают пакеты с исходным кодом для работы в Unix-подобных операционных системах.
Code::Blocks — свободная кроссплатформенная среда разработки. Code::Blocks написана на С++ и использует библиотеку wxWidgets. Имея открытую архитектуру, может масштабироваться за счёт подключаемых модулей. Поддерживает языки программирования С, С++, D, Fortran.
a.out — формат запускаемых файлов, объектного кода и, позднее, разделяемых библиотек в некоторых (старых) версиях UNIX. Название a.out впервые было использовано Кеном Томпсоном в качестве названия файлов, продуцируемых его ассемблером для PDP-7 в 1968 году. Впоследствии это название закрепилось за форматом продуцируемых файлов для отличия от других форматов объектных файлов.
GNU Assembler или GAS — ассемблер проекта GNU; используется компилятором GCC. Входит в пакет GNU Binutils. Кроссплатформенная программа, запускается и компилирует код для многочисленных процессорных архитектур. Распространяется на условиях свободной лицензии GPL 3.
Autotools, или система сборки GNU,— это набор программных средств, предназначенных для поддержки переносимости исходного кода программ между UNIX-подобными системами.
GNU Binary Utilities (binutils) — набор инструментального ПО для обращения с объектным кодом в объектных файлах различного формата. Современные версии были изначально написаны программистами из Cygnus Solutions, используя библиотеку libbfd. Эти утилиты обычно используются в сочетании с GCC, make и отладчиком GNU.
WinAVR — программный пакет для операционных систем семейства Windows, включающий в себя кросс-компилятор и инструменты разработки для микроконтроллеров серий AVR и AVR32 фирмы Atmel.
GNU AVR toolchain, или AVR GCC toolchain, — наименование набора распространяемых по лицензии GPL, LGPL пакетов программ, необходимых для компиляции из исходных текстов выполняемого кода программ для процессоров AVR. Основу составляют утилиты avr-binutils, avr-gcc, avr-libc, в дополнение к ним применяются утилиты внутрисхемного программирования, а также симуляции и отладки.
GNU linker — компоновщик исполняемых файлов, свободная реализация компоновщика ld ОС Unix.
Алешандре «Алекс» Олива — бразильский популяризатор свободного программного обеспечения, разработчик и основатель Латиноамериканского фонда свободного программного обеспечения (FSFLA). Официальный спикер GNU и Фонда свободного программного обеспечения.
Исполняемый файл — набор инструкций, который заставляет компьютер выполнить определённую задачу. В отличие от текстового файла, который рассчитан на чтение человеком, исполняемый файл рассчитан на чтение процессором.