fpc это что такое

Что такое Free Pascal, и с чем его едят?

Free Pascal, иначе называемый FPC (Free Pascal Compiler) — это 32х-разрядный, кросс­плат­фор­мен­ный компилятор языка Pascal. В настоящем обзоре я рассмотрю его основные ха­рак­те­рис­ти­ки и возможности. Free Pascal относится к категории сво­бод­но­го программного обес­пе­че­ния (free software) и распространяется по лицензии GNU.

Кроссплатформенность

Итак, что в данном случае понимается под кроссплатформеностью? Довольно-таки большое ко­ли­чес­тво платформ, однако. Во-первых, это два типа процессора:

Для i386 поддерживаются следующие операционные системы:

Версия 1.1 (находящаяся в состоянии разработки нестабильная ветвь) также поддерживает:

Надо заметить, что поддержка некоторых целевых платформ в нестабильной версии на­хо­дит­ся в состоянии разработки и не впол­не пригодна для серьезной работы. Также в ветке 1.1 идет разработка компиляции для Linux и других ОС на отличных от i386 и m68k типах про­цес­со­ров, таких как PowerPC, Sparc и 64х-разрядные процессоры линии x86.

Непосредственно кросскомпиляция поддерживается, однако возникают серьезные про­бле­мы. Так, например, мне не удалось ском­пи­ли­ро­вать ассемблерные части RTL для Linux ис­поль­зуя версии binutils для DOS и Windows.

Возможности языка

В целом возможности языка ориентированы на развитые «промышленные стандарты», а не на ANSI-стандарт языка, как GNU Pascal. Промышленным же стандартом языка Pascal в нас­тоя­щее время является его диалект Object Pascal от фирмы Borland. Кро­ме того, Free Pascal под­дер­жи­ва­ет дополнительные расширения, нехарактерные для Borland Delphi.

Версия 1.0.10 поддерживает следующие возможности:

В версии 1.1 добавлены средства языка из старших версий Borland Delphi:

В настоящий момент все перечисленные средства языка работают удовлетворительно, хотя мож­но выделить пару проблем: во-пер­вых, незавершено автопреобразование строк UNICODE, и во-вторых, реализация интерфейсов допускает не­со­от­вет­ствие тре­бо­ва­ни­ям мо­де­ли COM — единственность ссылки на IUnknown должна отслеживаться разработчиком.

Компиляция

Компиляция происходит весьма быстро, поскольку, как и положено компилятору Pascal, Free Pascal работает в один проход. Так, на­при­мер, полная сборка самого компилятора на моем ком­пью­те­ре (Celeron 600) занимает около полутора минут.

Для сборки объектных файлов, получающихся в результате компиляции, вызывается внеш­ний компоновщик — GNU ld (или ldw для Windows-платформы). Вообще, дистрибутив Free Pascal попросту включает в себя пакет GNU BinUtils, частью которого яв­ля­ет­ся ld. Также дан­ный пакет включает в себя кроссплатформенный ассемблер as (asw), GNU make, ком­пи­ля­тор ресурсов для Win32 — windres и другие программы.

Встроенный компоновщик планируется в следующих версиях компилятора, однако ход ра­бот в этом направлении мне неизвестен.

Компилятор Free Pascal использует оптимизацию. Хотя она и уступает интеллектуальной оп­ти­ми­за­ции компилятора того же Delphi, од­на­ко рутинную, формальную оптимизацию FPC та­ки выполняет. В частности, можно указать целевой процессор, чтобы ис­поль­зо­вать рас­ши­рен­ный набор команд, отсутствующих в i386, например, команды Pentium II. Для вычислений мож­но задействовать на­бор команд MMX или XMM.

Стандартные модули

В состав дистрибутива входят модули, реализующие основную функциональность. Кон­крет­ный состав модулей зависит от плат­фор­мы. Кроме ядра RTL, дистрибутив включает в себя до­пол­ни­тель­ные модули, на­зы­ва­емые «пакетами» (packages), со­дер­жа­щие, на­при­мер, ин­тер­фейс к API SQL-сервера InterBase (пакет ibase ), или функции работы с регулярными вы­ра­же­ни­ями (пакет regexpr ).

Документация

В целом, Free Pascal весьма хорошо документирован.

Документация к версии 1.0.10 состоит из шести частей и распространяется в различных фор­ма­тах, в том числе — исходники LaTeX. В состав дистрибутива входит документация в виде PDF и HTML. Ниже — описание частей документации.

Free Pascal : Reference guide

Free Pascal : Users’ manual

Руководство пользователя. Содержит описание процедуры инсталляции, ключей командной стро­ки компилятора, IDE и ути­лит, входящих в состав дистрибутива, сообщений компилятора об ошибках, ошибках времени выполнения и так далее. Также со­дер­жит перечень стан­дарт­ных модулей для различных платформ.

Free Pascal : Programmers’ manual

Руководство программиста. Описываются режимы компиляции, директивы компилятора, во­про­сы распределения памяти, ком­по­нов­ки, использования ассемблера и так далее.

Free Pascal supplied units : Reference guide

Справочное руководство по стандартным модулям. Довольно подробно описываюся модули RTL, за исключением тех, которые яв­ля­ют­ся интерфейсами к API операционных систем и их ком­по­нент.

Free Component Library (FCL) : Reference guide

FPDoc : Free Pascal code documenter : Reference manual

Руководство по использованию утилиты для автодокументации fpcdoc, входящей в состав дист­ри­бу­ти­ва.

IDE и утилиты

Вместе с компилятором распространяется IDE (интегрированная среда разработки — In­te­gra­ted Development Environment) тек­сто­во­го режима, похожее на IDE Turbo/Borland Pascal. В нас­тоя­щее время, стабильные версии IDE, насколько мне известно, су­щес­тву­ют только для DOS и Win32, работа над вариантами для других платформ еще не закончена. IDE содержит встро­ен­ную систему отладки — если я не ошибаюсь, с использованием отладчика GNU GDB, — и встроенную справку.

О стабильности IDE, к сожалению, приходится говорить с некоторой натяжкой — проблемы су­щест­ву­ют. Однако, в целом поль­зо­вать­ся можно.

Также в состав дистрибутива входят следующие утилиты:

Кроме вышеперечисленных, относящихся собственно к Free Pascal, утилит, в дистрибутив вхо­дит, как уже упоминалось, пакет GNU BinUtils.

В настоящий момент находится в процессе разработки RAD для Free Pascal — IDE Lazarus. Су­щест­ву­ет рабочая версия для Linux. Версия для Win32 пока не работает.

Лицензия

Free Pascal распространяется под лицензией GNU GPL (GNU General Public License), вхо­дя­щие в состав дистрибутива биб­ли­о­те­ки модулей — под лиценизией GNU LGPL (GNU Lesser Public License). Таким образом, программы, написанные на Free Pascal, мо­гут рас­про­стра­нять­ся каким угодно образом, в том числе — и закрытым, а исходники самого компилятора дос­туп­ны для из­ме­не­ния и использования с сохранением условий GNU GPL.

Источник

Что такое Free Pascal, и с чем его едят?

Кроссплатформенность

Надежность и удобство

Существует мнение, что бесплатные и открытые програмные продукты менее надежны, чем коммерческие. К сожалению, в большинстве случаев это действительно так.

Однако и здесь Free Pascal является приятным исключением. Лично мне пришлось столкнуться в лоб только с одним глюком, причем только тогда, когда я использовал возможность Free Pascal’я работать не с родным для него GNU-ассемблером, а с TASM. Bug-list на сайте freepascal.org весьма обширен, однако подавляющее большинство багов обычному программисту никогда не встретится. Кроме того, в отличие от коммерческих систем эти ошибки не скрываются и исправляются командой разработчиков.

Компилятор сам управляет процессом ассемблирования и сборки, так что пользоваться им может и начинающий программист, привыкший к интегрированным средам.

Модули и библиотеки

Базовая библиотека включает в себя стандартные модули, реализующие управление памятью, работу с файловой системой, управление консольным вводом/выводом, работу со строками и датами, математические функции, обработку исключений и интерфейс к API поддерживаемых операционных систем. При этом все вышеперечисленное, кроме API, для различных систем реализовано единообразно a-la Borland Pascal.

Если сравнивать с Turbo Pascal, то мы видим модули CRT, DOS, Graph (реализует работу с VGA-графикой), Strings, Objects. Сравнивая с Borland Delphi, видим соответствующие модули SysUtils и Classes. Для работы с API в базовой библиотеке предусмотрены модули Linux, Windows и GO32 (API DOS-расширителя GO32v2).

Несколько библиотек, находящихся пока в состоянии разработки, предназначено для объектной реализации GUI-интерфейса для Windows и XWindow.

В процессе разработки библиотека доступа к базам данных. Предполагаются InterBase, MySQL и Postgress. Сейчас пока можно с ними работать только через их API.

Лицензия

Free Pascal распространяется на условиях GNU General Public License (GNU GPL). Модули и библиотеки распространяются на условиях GNU Library General Public License (GNU LGPL), последняя версия данной лицензии называется GNU Lesser Public License.

Ознакомиться с ними и узнать, что за зверь GNU можно на gnu.org или gnu.ru.

Так вот, Free Pascal поддерживает классы и RTTI. Поддерживает также перегрузку (overloading) процедур и функций и обработку исключений в try-блоках. Поддерживает он и длинные строки (тип ansistring) по модели Delphi.

IDE и утилиты

Отладчик прилагается в дистрибутиве (см. выше). К сожалению, GNU-отладчик не ориентирован на Free Pascal, зато Free Pascal ориентирован на него. Лично я отладчиком стараюсь не пользоваться, предпочитая «метод вилки».

Справка

Справка Free Pascal распространяется с дистрибутивом в двух форматах: PDF и HTML, при желании можно скачать отдельно справку и в других форматах. И в том и в другом виде она хорошо структурирована и прекрасно читается. Состоит из четырех книг:

«Руководство программиста», которое описывает различные аспекты программирования, такие как директивы компилятора, использование ресурсов, использование встроенного ассемблера и т.д.

«Справочник», где описывается язык Pascal в его Free Pascal диалекте и содержимое модулей System и ObjPas.

«Справочник модулей». Описываются модули: CRT, DOS, DXELoad, Emu387, GetOpts, GPM, GO32, Graph, HeapTrc, IPC, Linux, Math, MMX, MSMouse, Objects, Ports, Printer, Sockets, Strings, SysUtils.

«Руководство пользователя», где рассматриваются такие вопросы, как инсталляция Free Pascal, ключи командной строки, файл настроек и проч.

Резюме

Источник

Fpc это что такое

Смотреть что такое «FPC» в других словарях:

FPC — may refer to: * Fast Patrol Craft, a type of light naval vessel * Federal Prison Camp * Federação Portuguesa de Ciclismo * Flight Paramedic Certified * Forest Products Commission a Western Australian Government body * Franklin Pierce College… … Wikipedia

FPC — Federal Power Commission Short Dictionary of (mostly American) Legal Terms and Abbreviations … Law dictionary

fpc — (fish protein concentrate) tasteless and odorless high protein food additive made from ground fish which is suitable to be consumed by humans … English contemporary dictionary

FPC — abbrev. 1. Federal Power Commission (1920 77) 2. fish protein concentrate: see FISH FLOUR … English World dictionary

FPC — Die Abkürzung FPC steht für: Factory Production Control, engl. für die werkseigene Produktionskontrolle, die im Rahmen der CE Kennzeichnung eine Rolle spielt Flexible Printed Circuit, engl. für Flexible Leiterplatte Free Pascal, ein freier Pascal … Deutsch Wikipedia

Fpc — Die Abkürzung FPC steht für: Factory Production Control, engl. für die werkseigene Produktionskontrolle, die im Rahmen der CE Kennzeichnung eine Rolle spielt Flexible Printed Circuit, engl. für Flexible Leiterplatte Free Pascal, ein freier Pascal … Deutsch Wikipedia

FPC — familial polyposis coli; family planning clinic; fish protein concentrate * * * FPC abbr fish protein concentrate … Medical dictionary

FPC — I. abbreviation for private circulation II. abbreviation fish protein concentrate herein * * * 1. Federal Power Commission: a board of five members established chiefly to regulate the natural gas and electric power industries engaged in… … Useful english dictionary

FPC — field press censorship; final planning conference … Military dictionary

FPC — abbreviation fish protein concentrate … New Collegiate Dictionary

Источник

Free Pascal. Первые шаги.

Что такое Free Pascal

Free Pascal это свободно распространяемый компилятор языка Паскаль. Free Pascal работает на различных процессорах (Intel x86, Amd64/x86_64, PowerPC, Sparc) и операционных системах (Linux, FreeBSD, Mac OS X/Darwin, Mac OS classic, DOS, Win32, OS/2, Netware и MorphOS). Синтаксис Free Pascal полностью совместим с Turbo Pascal 7.0, а так же, по утверждению разработчиков, с большинством версий Delphi (классы, rtti, исключения, ansistrings, widestrings, интерфейсы). Для пользователей Apple есть режим совместимости с Mac Pascal. Кроме того Free Pascal поддерживает перегрузку функции, перегрузку оператора, глобальные свойства и некоторые другие особенности.

Сам компилятор распространяется бесплатно по лицензии GNU GPL, а идущие вместе с ним пакеты и библиотеки по модифицированной LGPL, что позволяет распространять ваши скомпилированные программы на любых удобных для вас условиях.

Получение

Как правило Free Pascal не продается в магазинах и для его получения необходим доступ в интернет. Установите соединение с интернет, запустите Internet Explorer (или тот броузер которым вы пользуетесь). В поле адрес наберите следующий текст (ссылку) – http://www.freepascal.org/down/i386/win32-ftp.freepascal.org.html и нажмите клавишу Enter.

Прим.: надо заметить, что это не единственное место где можно получить компилятор и если у вас достаточно для этого квалификации, то перейдите по ссылке http://www.freepascal.org/download.html и выберите тот вариант который вас больше устраивает.

Установка

fpc это что такое. Смотреть фото fpc это что такое. Смотреть картинку fpc это что такое. Картинка про fpc это что такое. Фото fpc это что такоеЕсли вы сохранили программу установки не на рабочем столе, то откройте проводник и выберите в нем свой каталог. Кликнув дважды (используйте левую кнопку мыши) по иконке «fpc-2.0.2.i386-win32» запустите программу установки.

fpc это что такое. Смотреть фото fpc это что такое. Смотреть картинку fpc это что такое. Картинка про fpc это что такое. Фото fpc это что такое

В открывшемся окне нажмите кнопку «Next».

fpc это что такое. Смотреть фото fpc это что такое. Смотреть картинку fpc это что такое. Картинка про fpc это что такое. Фото fpc это что такое

В следующем окне вам будет предложено указать каталог в который будет установлен Free Pascal. Лучше оставьте тот, что указан по-умолчанию. Для продолжения нажмите «Next».

fpc это что такое. Смотреть фото fpc это что такое. Смотреть картинку fpc это что такое. Картинка про fpc это что такое. Фото fpc это что такое

fpc это что такое. Смотреть фото fpc это что такое. Смотреть картинку fpc это что такое. Картинка про fpc это что такое. Фото fpc это что такое

В следующем окне вам будет предложено выбрать название для раздела главного меню Windows. Ничего не меняйте, просто нажмите «Next».

fpc это что такое. Смотреть фото fpc это что такое. Смотреть картинку fpc это что такое. Картинка про fpc это что такое. Фото fpc это что такое

В следующем окне («Select Additional Task») опять же ничего не меняйте, нажмите «Next».

fpc это что такое. Смотреть фото fpc это что такое. Смотреть картинку fpc это что такое. Картинка про fpc это что такое. Фото fpc это что такое

Далее откроется окно, содержащее общую информацию о заданных параметрах установки. Чтобы начать нажмите «Install».

fpc это что такое. Смотреть фото fpc это что такое. Смотреть картинку fpc это что такое. Картинка про fpc это что такое. Фото fpc это что такое

fpc это что такое. Смотреть фото fpc это что такое. Смотреть картинку fpc это что такое. Картинка про fpc это что такое. Фото fpc это что такое

После завершения процесса копирования файлов появится окно («Information»), в окне содержится информация (на английском языке) о новшествах версии 2.0.2. Нажмите «Next» и вы перейдете к заключительному окну.

fpc это что такое. Смотреть фото fpc это что такое. Смотреть картинку fpc это что такое. Картинка про fpc это что такое. Фото fpc это что такое

Если вы желаете ознакомится с файлом readme.txt (на английском языке), то оставьте галочку около «View readme.txt». Если нет, то уберите ее. Нажмите кнопку «Finish» для завершения установки.

Поздравляю! Вы установили Free Pascal.

Прим.: пользователям Windows 98 чтобы иметь возможность запускать команды компилятора из любого каталога необходимо в файле autoexec.bat добавить в переменную PATH каталог C:\FPC\2.0.2\bin\i386-win32 и затем перезагрузить компьютер.

Первая программа

fpc это что такое. Смотреть фото fpc это что такое. Смотреть картинку fpc это что такое. Картинка про fpc это что такое. Фото fpc это что такоеПосле того как вы выполнили описанные выше действия у вас на рабочем столе появилась иконка (ярлык) «Free Pascal IDE». При двойном клике по этой иконке запустится классическая интегрированная среда разработки. Среда имеет текстовый интерфейс. Если вы программировали с использование Turbo Pascal, то у вас не возникнет проблем с освоением этой среды. В любом случае помните, что это не единственный вариант. Для Free Pascal есть множество различных вспомогательных средств от простых редакторов с подсветкой синтаксиса до систем визуального проектирования.

fpc это что такое. Смотреть фото fpc это что такое. Смотреть картинку fpc это что такое. Картинка про fpc это что такое. Фото fpc это что такое

Теперь запустите IDE. После открытия окна можете нажать клавиши Alt+Enter для полноэкранного режима. Нажмите клавишу F10 для перехода в главное меню. Выберите меню File и нажмите Enter. В появившемся меню выберите команду New и нажмите клавишу Enter. Откроется новое окно редактора вашей программы. В нем наберите:

fpc это что такое. Смотреть фото fpc это что такое. Смотреть картинку fpc это что такое. Картинка про fpc это что такое. Фото fpc это что такое

fpc это что такое. Смотреть фото fpc это что такое. Смотреть картинку fpc это что такое. Картинка про fpc это что такое. Фото fpc это что такое

Прим.: если вы используете Windows 98, то сохраняйте свои программы в каталогах короткими английски именами. Если вы сохраните программу в каталоге «c:\Мои докумениты», то возникнут проблемы во процессе компиляции.

Для компиляции и выполнения программы нажмите Ctrl+F9. Если вы сделали все как написано, то процесс должен пройти успешно. Чтобы посмотреть результат работы программы воспользуйтесь сочетанием клавиш Alt+F5. Там вы увидете столь любимое всеми сообщение «Hello, world!».

fpc это что такое. Смотреть фото fpc это что такое. Смотреть картинку fpc это что такое. Картинка про fpc это что такое. Фото fpc это что такое

Заключение

В заключении хочу выразить свою особую благодарность всем кто дочитал до этого места. Спасибо.

Источник

Fpc это что такое

Полезное

Смотреть что такое «FPC» в других словарях:

FPC — may refer to: * Fast Patrol Craft, a type of light naval vessel * Federal Prison Camp * Federação Portuguesa de Ciclismo * Flight Paramedic Certified * Forest Products Commission a Western Australian Government body * Franklin Pierce College… … Wikipedia

FPC — Federal Power Commission Short Dictionary of (mostly American) Legal Terms and Abbreviations … Law dictionary

fpc — (fish protein concentrate) tasteless and odorless high protein food additive made from ground fish which is suitable to be consumed by humans … English contemporary dictionary

FPC — abbrev. 1. Federal Power Commission (1920 77) 2. fish protein concentrate: see FISH FLOUR … English World dictionary

FPC — Die Abkürzung FPC steht für: Factory Production Control, engl. für die werkseigene Produktionskontrolle, die im Rahmen der CE Kennzeichnung eine Rolle spielt Flexible Printed Circuit, engl. für Flexible Leiterplatte Free Pascal, ein freier Pascal … Deutsch Wikipedia

Fpc — Die Abkürzung FPC steht für: Factory Production Control, engl. für die werkseigene Produktionskontrolle, die im Rahmen der CE Kennzeichnung eine Rolle spielt Flexible Printed Circuit, engl. für Flexible Leiterplatte Free Pascal, ein freier Pascal … Deutsch Wikipedia

FPC — familial polyposis coli; family planning clinic; fish protein concentrate * * * FPC abbr fish protein concentrate … Medical dictionary

FPC — I. abbreviation for private circulation II. abbreviation fish protein concentrate herein * * * 1. Federal Power Commission: a board of five members established chiefly to regulate the natural gas and electric power industries engaged in… … Useful english dictionary

FPC — field press censorship; final planning conference … Military dictionary

FPC — abbreviation fish protein concentrate … New Collegiate Dictionary

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *