Portable C Compiler (сокращается как pcc или реже pccm — «portable C compiler machine») — один из ранних компиляторов для языка C, написанный Стивеном С. Джонсоном из Bell Labs в середине 70-х, основываясь частично на разработках Алана Снидера.

Стал одним из первых компиляторов, способных адаптировать код к различным архитектурам вычислительных систем, что обеспечило ему долгую жизнь. Он поставлялся вместе с BSD Unix до релиза 4.4BSD в 1994 — тогда его заменил GCC. В 1980-х годах был настолько влиятельным, что многие компиляторы базировались на нём. Вот что пишет Денис Ритчи в своей работе об истории языка Си:

Возможности Успеху Portable C Compiler способствовали его портируемость и высокие диагностические возможности:

Компилятор был разработан таким образом, что только малая часть его исходного кода была платформозависима. Он был относительно строг по отношению к синтаксическим ошибкам, что положительно влияло на корректность кода.

Текущая версия Новая версия Portable C Compiler, основанная на оригинальной версии, написанной С. Джонсоном, теперь поддерживается Андресом Магнуссоном. Компилятор распространяется по BSD-лицензии. По словам Андреса:

Эта новая версия была добавлена в NetBSD pkgsrc и OpenBSD в сентябре 2007, и, чуть позже, в NetBSD, что породило предположения о том, что со временем этот компилятор может вытеснить GNU C Compiler в рамках операционных систем, основанных на BSD. Разработка и дальнейшее развитие и адаптация компилятора PCC ведётся в основном проектом OpenBSD, и, по состоянию на 29 декабря 2009 года, компилятор PCC строит функциональный образ OpenBSD под x86-32.

1 апреля 2011 года вышла версия PCC 1.0. В данном релизе компилятор поддерживает архитектуры x86 и x64, и запускается на операционных системах NetBSD, OpenBSD, FreeBSD, различных Linux-дистрибутивах, а также Windows. Дальнейшая разработка продолжается, включая поддержку большего числа архитектур, а также фронтендов для языков FORTRAN 77 и C++.

В 2012 году PCC был удалён из исходного кода OpenBSD. Его разработка застопорилась, и никто не взялся за то, чтобы сделать из него реальную альтернативу GCC.

Последняя версия PCC 1.1.0 была выпущена 10 декабря 2014.

См. также Amsterdam Compiler Kit GNU Compiler Collection

Примечания

Ссылки

Категория:Компиляторы Си Категория:Свободные компиляторы и интерпретаторы