На прошлом занятии мы установили FPC (Free Pascal Compiler). Теперь проверим, прошла ли установка успешно. Откройте терминал CMD: его можно найти через поиск CMD в меню «Пуск».
Проверка успешности установки
Затем введите команду fpc. Если на экран выведется текст ниже — установка выполнена корректно.
C:\Users\Jack>fpc
Free Pascal Compiler version 3.2.2 [2021/05/15] for i386
Copyright (c) 1993-2021 by Florian Klaempfl and others
C:\FPC\3.2.2\bin\i386-Win32\fpc.exe [options] <inputfile> [options]
Only options valid for the default or selected platform are listed.
Put + after a boolean switch option to enable it, - to disable it.
@<x> Read compiler options from <x> in addition to the default fpc.cfg
-a The compiler does not delete the generated assembler file
-a5 Don't generate Big Obj COFF files for GNU Binutils older than 2.25 (Windows, NativeNT)
-al List sourcecode lines in assembler file
-an List node info in assembler file (-dEXTDEBUG compiler)
-ao Add an extra option to external assembler call (ignored for internal)
-ar List register allocation/release info in assembler file
-at List temp allocation/release info in assembler file
-A<x> Output format:
-Adefault Use default assembler
-Aas Assemble using GNU AS
-Amacho Mach-O (Darwin, Intel 32 bit) using internal writer
-Anasm Assemble using Nasm
-Anasmcoff COFF (Go32v2) file using Nasm
*** press enter ***Code language: HTML, XML (xml)
Написание кода
Теперь создадим наш первый пример на Free Pascal. Создайте папку на диске C или D для хранения исходных кодов Free Pascal.
D:\fpcdemo
Это папка, которую я создал для демонстрации.
В этой папке создайте текстовый файл и переименуйте его в: mydemo.dpr
Откройте файл в Блокноте и добавьте следующий код:
program <strong>mydemo</strong>;
begin
WriteLn('Hello foxDevelop.com!');
end.Code language: HTML, XML (xml)
Компиляция и запуск
В терминале перейдите в каталог D:\fpcdemo командой cd
Затем выполните команду: fpc mydemo.dpr
После выполнения команды произойдёт компиляция и линковка, в папке появится исполняемый файл mydemo.exe.
Для запуска программы введите только имя mydemo без расширения .exe.
На экране выведется строка Hello foxDevelop.com!
D:\fpcdemo>fpc mydemo.dpr
Free Pascal Compiler version 3.2.2 [2021/05/15] for i386
Copyright (c) 1993-2021 by Florian Klaempfl and others
Target OS: Win32 for i386
Compiling mydemo.dpr
Linking mydemo.exe
3 lines compiled, 0.1 sec, 28224 bytes code, 1316 bytes data
D:\fpcdemo>mydemo
Hello foxDevelop.com!Code language: CSS (css)

Команда fpc xxxxx.dpr компилирует исходный файл .dpr, после чего запускает линковку для создания mydemo.exe.
В процессе компиляции исходный код преобразуется в машинные объектные файлы с расширением .o.
В вашей папке проекта вы увидите файл с расширением .o.

Линковка нужна потому, что для работы программы требуются системные библиотеки и нужно объединить несколько кодовых модулей. Задачи линковщика:
Заполнение адресов памяти функций и переменных из разных модулей и библиотек;
Объединение всех объектных файлов, полученных при компиляции;
Привязка системных библиотек и рантайм-библиотеки FPC;
Перераспределение адресов памяти;
Упаковка в исполняемые форматы exe, elf и другие.
Одним предложением: собрать разрозненные результаты компиляции и все библиотеки в единое полноценное запускаемое приложение.
Первый пример на Free Pascal