Ада-95. Компилятор GNAT


Part_3


Доступность средств разработки
Система Ада-компилятора GNAT
Установка GNAT
Установка GNAT на Windows
Установка GNAT на Linux
Установка бинарных файлов от ACT
Установка RPM-пакетов ALT
Установка RPM-пакетов ALT - часть 2
Общие правила наименования файлов
Общие правила наименования файлов - часть 2
Использование других имен файлов
Альтернативные схемы именования
Альтернативные схемы именования - часть 2
Альтернативные схемы именования - часть 3
Сборка первой программы
Три этапа сборки проекта
Опции компилятора
Опции компилятора - часть 2
Проверка ошибок во время выполнения программы
Проверка ошибок в исходном тексте без компиляции
Обнаружение большого количества ошибок при компиляции
Связывание Ада-программы
Опции редактора связей gnatbind
Правила поиска файлов для gnatbind
Компоновщик gnatlink
Опции компоновщика gnatlink
Утилита gnatmake
Опции gnatmake
Указание путей поиска файлов для gnatmake
Управление режимами gnatmake
Примечания для командной строки gnatmake
Примечания для командной строки gnatmake - часть 2
Связывание и компоновка, утилита gnatbl
Модели компиляции GNAT и C/C++
Модель компиляции GNAT и общая согласованная Ада-библиотека
Модель компиляции GNAT и общая согласованная Ада-библиотека - часть 2
Директивы конфигурации
Обработка директив конфигурации
Файлы директив конфигурации
Уменьшение затрат времени с помощью утилиты gnatstub
Утилита перекрестных ссылок gnatxref
Оценка "мертвого" кода с помощью утилиты gnatelim
Отслеживание состояния стека и обнаружение утечек памяти во время выполнения программы
Утилита gnatmem
Средства GNATDebug_Pools
Средства GNATDebug_Pools - часть 2
Условная компиляция с помощью препроцессора gnatprep
Условная компиляция с помощью препроцессора gnatprep - часть 2
Утилиты gnatpsys и gnatpsta
Произвольное именование файлов, утилита gnatname
Произвольное именование файлов, утилита gnatname - часть 2
Произвольное именование файлов, утилита gnatname - часть 3
Оптимизация проекта
Опции оптимизации компилятора
Опции оптимизации компилятора - часть 2
Средства оптимизации GNAT, используемые в исходном тексте
Средства оптимизации GNAT, используемые в исходном тексте - часть 2
Оптимизация для специфического типа процессора
GNAT и библиотеки
Создание Ада-библиотеки
Создание Ада-библиотеки - часть 2
Установка Ада-библиотеки
Использование Ада-библиотеки
Перекомпиляция библиотеки времени выполнения GNAT
Средства управления проектами в системе GNAT
Файлы проектов GNAT
Файлы проектов GNAT - часть 2
Примеры файлов проектов
Различные опции сборки и каталоги выходных результатов для общих исходных файлов
Различные опции сборки и каталоги выходных результатов для общих исходных файлов - часть 2
Различные опции сборки и каталоги выходных результатов для общих исходных файлов - часть 3
Различные опции сборки и каталоги выходных результатов для общих исходных файлов - часть 4
Различные опции сборки и каталоги выходных результатов для общих исходных файлов - часть 5
Использование внешних переменных
Использование внешних переменных - часть 2
Импорт других проектов
Импорт других проектов - часть 2
Расширение существующего проекта
Расширение существующего проекта - часть 2
Синтаксис файлов проектов
Базовый синтаксис
Пакеты
Выражения
Строковые типы
Переменные
Переменные - часть 2
Атрибуты
Атрибуты - часть 2
Атрибуты - часть 3
Атрибуты как ассоциативные массивы
Конструкция "case"
Исходные, объектные и исполняемые файлы проекта
Каталог объектных файлов
Каталог исполняемых файлов
Каталоги исходных файлов
Имена исходных файлов
Импорт проектов
Импорт проектов - часть 2
Расширение проекта
Обращение к внешним переменным в файлах проектов
Пакеты файлов проектов
Переменные импортируемых проектов
Схемы именования файлов
Схемы именования файлов - часть 2
Схемы именования файлов - часть 3
Проекты библиотек
Проекты библиотек - часть 2
Опции командной строки, относящиеся к файлам проектов
Утилита gnatmake и файлы проектов
Утилита gnatmake и файлы проектов - часть 2
Утилита gnatmake и файлы проектов - часть 3
Утилита gnatmake и файлы проектов - часть 4
Управляющая программа gnat и файлы проектов
Управляющая программа gnat и файлы проектов - часть 2
Расширенный пример
Расширенный пример - часть 2
Диаграмма полного синтаксиса файлов проектов
Построение больших проектов
Использование утилиты GNU make
Общие сведения о GNU make
Использование утилиты gnatmake в файлах Makefile
Автоматическое создание списка каталогов
Генерация опций командной строки для gnatmake
Преодоление ограничения на длину командной строки
Переносимость в UNIX, пакеты GNU Automake и GNU Autoconf
Использование встроенного ассемблера
Пакет SystemMachine_Code
Различия в использовании внешнего и встроенного ассемблера
Особенности реализации компилятора GNAT
Особенности используемого ассемблера
Именование регистров процессора
Порядок следования операндов источника и приемника
Значения констант
Шестнадцатеричные значения
Суффиксы размера
Загрузка содержимого памяти
Косвенная адресация
Инструкции повторения
Использование пакета SystemMachine_Code
Пример элементарной программы
Проверка примера элементарной программы
Поиск ошибок в коде ассемблера
Более реальный пример
Более реальный пример - часть 2
Параметры вывода
Ограничения
Ограничения - часть 2
Ограничения - часть 3
Использование самостоятельно описываемых типов
Параметры ввода
Параметры ввода - часть 2
Встроенная подстановка (inline) для кода на встроенном ассемблере
"Затирание" содержимого регистров
Изменяемые инструкции
Синтаксис GNAT
Директивы компилятора для отладки
Директивы компилятора для отладки - часть 2
Получение расширенной информации компилятора
Использование отладчика GNU GDB
Общие сведения об отладчике GNU GDB



Начало