LINUX.ORG.RU

Вышел PCC 1.0

 , , , ,


0

0

Проект Portable C Compiler ставит своей целью создание альтернативы компилятору GCC для языка C под лицензией BSD. Проект берёт начало от оригинального компилятора C, использовавшегося в UNIX в семидесятые - восьмидесятые годы прошлого века. Компилятор отличают:

  • полная поддержка стандарта C99;
  • малый размер (640 КБ в архиве) и простой код;
  • быстрая компиляция.

Заявлена работа в ОС Linux, *BSD, Windows, Mac OS X, Solaris. Поддерживаются платформы i386 и amd64, другие платформы — ограниченно.

Генерируемый код, в большинстве случаев, сравним по эффективности с кодом, производимым GCC. На данный момент компилятор собирает FreeBSD, NetBSD и ядро OpenBSD.

Некоммерческая огранизация BSD Fund, спонсор проекта, объявляет конкурс по успешной сборке ядра Linux при помощи PCC. Также в их планах фронтенды для языков Fortran (почти готов) и C++.

Архитектура PCC (на английском)

Объявление о релизе

>>> Домашняя страница

Ответ на: комментарий от tommy

> так вот одна по доброй воле отдала, а другая взяла эти патчи а свои не отдала. и это GPL

Это судебное дело, а не GPL, тебе сказали уже.

anonymous ()
Ответ на: комментарий от anonymous

не имеется в виду я так понимаю проблема тивоизации, но даже она все равно не дает права на закрытие исходников, только на запрет свободы модификации, но она была свойственна лишь GPLv2, устранили в GPLv3 и отсюда вопрос к тем кто утверждает, что все прям так стремятся среди производителей делится кодом, что же это производители так бояться GPLv3?)

pylin ★★★★★ ()
Ответ на: комментарий от tommy

>отдавать патчи не обязана

хреново ты читал GPL. Если лицензия GPL - обязана. Если LGPL - не обязана.

другая взяла эти патчи а свои не отдала. и это GPL.


это непонимание некоторыми «гениями без частицы ни» принципов GPL, только и всего

Pinkbyte ★★★★★ ()
Ответ на: комментарий от Pinkbyte

ну и если проприетарщина и не включает в себя никаких GPL-компонентов - тем более не обязана

Pinkbyte ★★★★★ ()
Ответ на: комментарий от tommy

то, что за такую фигню не с каждой конторой судятся еще ничего не значит. Если закон не соблюдается, это не значит что он хреновый, это значит хреново следят за его соблюдением...

Pinkbyte ★★★★★ ()
Ответ на: комментарий от pylin

> не имеется в виду я так понимаю проблема тивоизации, но даже она все равно не дает права на закрытие исходников

Вот именно. Его камлания не о тивоизации.

anonymous ()
Ответ на: комментарий от iZEN

iZEN, дай пожму твою руку. Единственный адкекватный BSDшник на моей памяти.

anonymous ()
Ответ на: комментарий от Vudod

BSDшпики способны творитьь компиляторы, а линуксоиды сложнее плеера не могут

namezys ★★★★ ()
Ответ на: комментарий от Pinkbyte

то, что за такую фигню не с каждой конторой судятся еще ничего не значит. Если закон не соблюдается, это не значит что он хреновый, это значит хреново следят за его соблюдением...


НЕТ ОСНОВАНИЙ судиться!

всё по GPL. никто по GPL не обязан делиться изменениями в компиляторе если сам компилятор не поставляется. а он и не поставляется в прошивках вайфаев, роутеров, телевизоров и тд и тп. вы не понримаете то что пытаетесь защищать. у вас ваши представления о «справедливости» подменяет реальность, а GPL не заставляет делиться тем что не поставляется никому.

сама контора пропатчила компилятор. собрала прошивку и проги в ней. вот изменения исходников GPL прог в прошивке, по требованию купившего железку с прошивкой, они обязаны предоставить (и только ему). а пропатченный компилятор под GPL - нет. они его не поставляли.

tommy ★★★★★ ()
Ответ на: комментарий от namezys

> BSDшпики способны творитьь компиляторы, а линуксоиды сложнее плеера не могут

не подскажешь - чем «BSDшпики» собирают свою BSD?

aho ()
Ответ на: комментарий от tommy

>разработчики девайса не обязаны поставлять компилятор которым собран бинарник (прошивка устройства - вайфай роутер холодильник сотовый автонавигатор) но вы это не понимаете, и соответственно не будет вам и исходников компилятора.

А как же:

«Соответствующий Исходный Код» произведения в форме объектного кода подразумевает весь исходный код, необходимый для генерации, установки, выполнения(для выполнимых произведений) объектного кода и модификации произведения, включая скрипты, контролирующие эти действия.

Ttt ☆☆☆☆☆ ()
Ответ на: комментарий от namezys

> Уже clang/LLVM

именно используют как основной компилятор, а не попробовали - и что-то получилось?

aho ()
Ответ на: комментарий от aho

Да. Apple уже пол года как основной гео используют

namezys ★★★★ ()
Ответ на: комментарий от namezys

> Да. Apple уже пол года как основной гео используют

1. Darwin != BSD
2. именно Darwin + базовые фреймворки собирается clang или какая-то незначительная часть от ОС?

aho ()
Ответ на: WTF? от iZEN

>ЧЯДНТ?

CC=/usr/local/bin/pcc


Юзаешь некрокомпилятор на некросистеме. Ты бы еще от Борланда взял.

devl547 ★★★★★ ()
Ответ на: комментарий от aho

Этого не кто не знает. Но в xCode это компиляторы по умолчанию

namezys ★★★★ ()
Ответ на: комментарий от namezys

В FreeBSD 9-CURRENT я заметил при сборке, что кроме LLVM/Clang собирается также GNU-тулчейн. Если отказаться от его сборки (в src.conf указать соответствующие опции типа: WITHOT_GNU=true WITHOUT_GNU_SUPPORT=true), то что может не работать и можно ли будет заново пересобрать систему в окружении с отсутствующим тулчейном?

То есть задача «обеспечить самопересборку FreeBSD из исходников без использования инструментов GNU» уже реальна?

iZEN ★★★★★ ()
Ответ на: комментарий от namezys

> Но в xCode это компиляторы по умолчанию

как бы я в курсе, подведем итоги:

1. Mac OS это не BSD (внезапно)
2. ты таки не знаешь - чем именно собирают Mac OS

aho ()
Ответ на: комментарий от aho

Там маленькие зелененькие человечки ручками пишут натив код

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

Но я уверен - это временное явление

namezys ★★★★ ()
Ответ на: комментарий от namezys

> BSDшпики способны творитьь компиляторы, а линуксоиды сложнее плеера не могут

Вы разберитесь, кто что творит, а то изя считает, что компиляторы к BSD никакого отношения не имеют - так, рядом проходили^W^Wв портах завалялись.

tailgunner ★★★★★ ()
Ответ на: комментарий от aho

BSDшпики способны творитьь компиляторы, а линуксоиды сложнее плеера не могут

не подскажешь - чем «BSDшпики» собирают свою BSD?

Нет, не подскажет. Это не в его интересах.

Vudod ★★★★★ ()

>Проект берет начало от оригинального компилятора C, использовавшегося в UNIX в семидесятые - восьмидесятые годы прошлого века.

Генерируемый код, в большинстве случаев, сравним по эффективности с кодом, производимым gcc.

Внимание вопрос - что делали разработчики gcc в течении 30 лет?

Nebuchadnezzar ★★★★ ()
Ответ на: комментарий от Nebuchadnezzar

>> Генерируемый код, в большинстве случаев, сравним по эффективности с кодом, производимым gcc.

Внимание вопрос - что делали разработчики gcc в течении 30 лет?

А что непонятно насчет «большинства случаев» (51%) и «сравним» (разница меньше порядка)? А про список поддерживаемых архитектур вопросы есть?

GCC был на уровне PCC 20 лет назад.

tailgunner ★★★★★ ()
Ответ на: комментарий от Ttt

«Соответствующий Исходный Код» произведения в форме объектного кода подразумевает весь исходный код, необходимый для генерации, установки, выполнения(для выполнимых произведений) объектного кода и модификации произведения, включая скрипты, контролирующие эти действия.

GPL v3 ? вот эта лицензия и приводит к тому что создаются иные проекты или эта прога не используется. весьма спорный пункт кстати, который при его соблюдении потребует например и исходники винды и требует выкладывать свои скрипты и прочие программы которых и не было в исходной программе. то есть GPLv3 сужает использование прог под ней и число разработчиков до минимального (готовых отдать всё включая своё личное). v2 так же не бесспорна в толкованиях.

tommy ★★★★★ ()
Ответ на: комментарий от tommy

>никто по GPL не обязан делиться изменениями в компиляторе если сам компилятор не поставляется

пропатченный компилятор под GPL - нет. они его не поставляли.


тьфу ты. я думал вы о самом ПО(прошивке), а вы о патчах на компилятор, которым это ПО собирали? Да, не обязанна делиться, согласен. Если они не распространяют патченную версию компилятора, не продают ее, etc - они не обязаны показывать патчи - и, я считаю, что это правильно и в этом нет ничего страшного

Pinkbyte ★★★★★ ()
Ответ на: комментарий от tommy

> потребует например и исходники винды

Не потребует. Там недвусмысленно написано, что системные библиотеки не попадают под определение этого «соответствующего исходного кода». Это во-первых.

Во-вторых, написано ж "... исходный код, необходимый для генерации ... объектного кода ... произведения". Для компиляции кода исходники компилятора не требуются, поэтому к «соответствующему исходному коду» он тоже отношения не имеет. Поэтому выкладывать исходники компилятора, к бинарникам которого вне компании-разработчика никто доступа не имеет, не обязательно.

На мой анонимный взгляд, тут всё вполне очевидно.

anonymous ()
Ответ на: комментарий от Nebuchadnezzar

>>Генерируемый код, в большинстве случаев, сравним по эффективности с кодом, производимым gcc.

Внимание вопрос - что делали разработчики gcc в течении 30 лет?

меньшинством случаев.

AVL2 ★★★★★ ()
Ответ на: комментарий от madcore

То, что ЛОРовские (да и русские вообще) линуксоиды - идиоты - можно было и не подтверждать ;)

anonymous ()
Ответ на: комментарий от Stanson

Поставь на свою материнскую плату альтернативный биос, потом перепрошей свободной прошивкой GPU - тогда поговорим

anonymous ()
Ответ на: комментарий от annulen

десктоп-то — это хомячкодесктоп.

anonymous ()

> Генерируемый код, в большинстве случаев, сравним по эффективности с кодом, производимым GCC.

Нормальных тестов, я так понимаю нет? «BYTE Unix Benchmark» это несерьёзно.

JustGuest ()

Как оно по сравнению с Clang?

Quasar ★★★★★ ()
Ответ на: комментарий от anonymous

Не потребует. Там недвусмысленно написано, что системные библиотеки не попадают под определение этого «соответствующего исходного кода». Это во-первых.

а винда не системная библиотека а инструмент.

tommy ★★★★★ ()
Ответ на: велосипед от madcore

madcore> Есть же clang.

Clang - монстрообразное Г, завязанное на LLVM.

Quasar ★★★★★ ()
Ответ на: комментарий от tommy

tommy> так вот одна по доброй воле отдала, а другая взяла эти патчи а свои не отдала. и это BSD.

fixed

Quasar ★★★★★ ()
Ответ на: комментарий от namezys

namezys> BSDшпики способны откапывать из могил компиляторы

fixed

Quasar ★★★★★ ()
Ответ на: комментарий от tommy

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

Ttt ☆☆☆☆☆ ()
Ответ на: комментарий от Quasar

Это GCC ваше - монстрообразное дерьмо, завязанное на самом себе через такую жопу, что хрен кто это теперь разгребёт.

anonymous ()
Ответ на: комментарий от anonymous

Исходники/патчи нужно давать только тем, кто получил бинарники. Не особо важно, от разработчика или от того, кому дал разработчик. Давать исходники совершенно «левым» людям никто не обязан (пока эти левые люди не получат бинарники). Т.е., можно взять код GPL, пропатчить неизвестно как, а потом использовать самому и никому не показывать.

anonymous ()
Ответ на: комментарий от Quasar

>Clang - монстрообразное Г, завязанное на LLVM.

Что плохого иметь один бакенд под любые говноязыки?

madcore ★★★★★ ()

>Проект берёт начало от оригинального компилятора C, использовавшегося в UNIX в семидесятые - восьмидесятые годы прошлого века.

Генерируемый код, в большинстве случаев, сравним по эффективности с кодом, производимым GCC.

Это они так тонко GCC обосрали?

Ramen ★★★★ ()
Ответ на: комментарий от tommy

> то есть GPLv3 сужает использование прог под ней и число разработчиков до минимального (готовых отдать всё включая своё личное).

Правильно, GPLv3 наступает на мозоль разработчикам-тивоизаторам. Потому исходники передавать было придумано не для того, чтобы их распечатать, повесить на стенку и любоваться, а чтобы при желании можно было самому скомпилировать и исполнить код. Те разработчики, которых это ущемляет не хотят, чтобы пользователи могли полностью использовать код. Их право, конечно не хотеть. Вот только Столлман всегда этого хотел, для того и выдумал лицензию GPL. В версии GPLv2 хитрожопые проприетарщики придумали как по сути обойти ее, поэтому и появилась GPLv3.

praseodim ★★★★★ ()
Ответ на: комментарий от praseodim

в общем «хитрожопые» создатели GPL v3 активно помогают развитию не GPL проектов (и большое им спасибо). gcc уже перевели под v3, да? отлично! ну мы в теме пор pcc 1.0, напоминаю.

tommy ★★★★★ ()
Ответ на: комментарий от Pinkbyte

> хреново ты читал GPL. Если лицензия GPL - обязана. Если LGPL - не обязана.

Если не предоставляет бинарника - не обязана. А бинарник собранный перепиленным компилятором - совсем другой продукт.

это непонимание некоторыми «гениями без частицы ни» принципов GPL, только и всего

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

EvilBlueBeaver ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.