Відповіді:
FreeBSD 10 використовуватиме BSD-ліцензований компілятор Clang замість GCC для 32- та 64-розрядних систем Intel x86. Єдине, що перешкоджає оптовому переключенню на всіх процесорних платформах, на які FreeBSD випускає, - це час та інтерес розробника.
Щодо FreeBSD 9 - який збирався випустити, коли це питання було вперше поставлено - говорилося про те, щоб Clang став компілятором за замовчуванням, але з цим було достатньо проблем, що вони вирішили відправити Clang поряд з GCC, а GCC залишити за замовчуванням для цього випуску.
Що стосується того, чому FreeBSD не намагався перейти до компілятора, який не є GPL, років тому чи, можливо, навіть створив свій власний, причина проста: важко.
Будь-який студент з нижчого класу може написати компілятор - це навіть може бути вимога до курсу - але написати хорошого компілятора важко. Писати хороший компілятор складніше, коли це потрібно для такої мови, як C або C ++. Завдання стає ще складніше, коли ви приймаєте обґрунтоване рішення, що новому компілятору потрібно принаймні наблизитись до продуктивності та можливостей GCC, що має за собою кілька десятиліть вартого розвитку.
Через це GCC 4.2 все ще є компілятором за замовчуванням у FreeBSD 9.
GCC 3.4, 4.4, 4.6, 4.7 та 4.8, до речі, є у дереві FreeBSD 9 Ports, і якась версія GCC, ймовірно, залишиться в портах ще довгі роки. Там багато програмних пакетів - багато з яких є у портах FreeBSD - які створюються лише за допомогою GCC.
Це, мабуть, неможливо. До недавнього часу ліцензовані компілятори C, що мають ліцензію на BSD, були, ймовірно, мало або не наближались до паритету gcc
.
Цей код у нашому вихідному дереві, що підпадає під загальну публічну ліцензію GNU (GPL) або General Public License (LGPL), має додані трохи більше рядків, хоча принаймні на стороні примусового доступу, а не на звичайному протилежному. Однак у зв'язку з додатковими складностями, які можуть розвиватися в комерційному використанні програмного забезпечення GPL, ми, однак, віддаємо перевагу програмному забезпеченню, поданому під більш спокійні авторські права BSD, коли це є розумним варіантом.