FreeBSD-CURRENT переведён по умолчанию на Clang

Проекты LLVM и FreeBSD отметили важную веху в своём развитии - в дерево исходных текстов ветки FreeBSD-CURRENT, на базе которой формируется релиз FreeBSD 10, для архитектур i386 и amd64 приняты изменения, включающие по умолчанию использование компилятора Clang и набора runtime-библиотек, развиваемых проектом LLVM. Исполняемые файлы cc, cpp и c++ отныне являются ссылками на clang. Clang задействован как для пересборки базовой системы, так и для сборки портов. Сборка с использованием GCC теперь представлена в качестве опции.

Таким образом, FreeBSD теперь по умолчанию использует С/C++ стек, поставляемый целиком под лицензией BSD. Напомним, что начиная с выпуска FreeBSD 9.0 в базовую систему был интегрирован Clang и набор сопутствующих библиотек, тем не менее по умолчанию как и раньше использовался GCC 4.2.1. Проект FreeBSD был вынужден использовать вышедшую 5 лет назад устаревшую версию набора компиляторов GCC 4.2.1 так как начиная с версии 4.2.2, GCC был переведен на лицензию GPLv3, мешающую интеграции новых версии GCC во FreeBSD из-за несовместимости runtime-компонентов GCC с лицензией BSD.

Сборка ядра, базовой системы и большинство портов с использованием Clang признана стабильной. Поддержка архитектур Mips, PowerPC, ARM и Sparc64 находится в стадии разработки. Несмотря на переход на Сlang в портах ещё можно встретить приложения, которые не могут быть собраны с Clang, как правило это очень старые программы, которые часто не собираются и с новыми версиями GCC. При сборке подобных портов следует использовать опцию "USE_GCC=any".

Дополнительно, можно отметить выход третьего кандидата в релизы FreeBSD 9.1. Финальный релиз запланирован на 12 ноября. Тестовая версия доступна для платформ amd64, i386, powerpc64 и ia64 (сборка для sparc64 задерживается). Установочные сборки доступны в виде образов bootonly, DVD и Memstick для USB Flash.

Источник:
http://www.opennet.ru/opennews/art.shtml?num=35237

<= Назад
Комментарии
]]> ipv6 ready Kiev LUGLinux4MeНостальгияЛичный сайт skeletora ]]>