The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Эксперимент по пересборке Debian с использованием Clang пока..."
Отправлено opennews, 06-Мрт-12 16:15 
Сильвестр Ледрю (Sylvestre Ledru) провёл (http://sylvestre.ledru.info/blog/sylvestre/2012/02/29/rebuil...) эксперимент по пересборке архива пакетов Debian GNU/Linux с использованием компилятора Clang (http://clang.llvm.org/), развиваемого в рамках проекта LLVM. Целью эксперимента была оценка пригодности Clang для сборки большого числа разнородного кода на языках C, C++ и Objective-C. Таким образом планировалось оценить, сможет ли Clang на текущей стадии развития выступать в роли альтернативы GCC при сборке пакетов в Debian. Интерес также представляли расширенные возможности Clang по выводу информации о возможных ошибках и недоработках, учёт которых позволил бы повысить общее качество кодовой базы.


Результаты эксперимента (http://clang.debian.net/)  превзошли ожидания, из 15658 пакетов проблемы со сборкой в Clang 3.0 были выявлены только  для 1381 пакетов (8.8 %), что соизмеримо (https://www.opennet.ru/opennews/art.shtml?num=7257) с числом проблем, возникавших в прошлом при переходе на более новые ветки GCC. Сильвестр Ледрю признался, что ожидал столкнуться с большим числом ошибок и проблем, связанных с Clang, но к своему удивлению обнаружил, что большинство проблем сборки оказались связаны с разницей в поддерживаемых стандартах языка Си, различиями в интерпретации или спорными моментами. В итоге, Сильвестр сделал вывод, что Clang уже достаточно стабилен и функционален для сборки большинства пакетов Debian, даже если для многих пакетов потребуются небольшие правки для обеспечения корректной компиляции. Из наиболее часто встречающихся проблем сборки в Clang 3.0 отмечены: отсутствие необходимых символов на этапе связывания (439 пакетов), неверный поиск в шаблонах классов (85) и сбой в работе сборочной утилиты xutils-dev (84).


Для сравнения была предпринята попытка пересборки с использованием прошлой версии Clang  - 2.9.  В результате был отмечен значительный прогресс в развитии Clang, версий 2.9 не удалось собрать 14.5% пакетов, в то время как для версии 3.0 несобранными остались только 8.8%. Кроме того, отмечаются такие достижения Clang, как обеспечение пересборки Chromium/Chrome, LibreOffice, замена gcc на clang в базовой системе FreeBSD, а также решение компании Apple по использованию Clang по умолчанию в Xcode, инструментарии разработки приложений для Mac OS X и iOS.


Судя по всему в следующие несколько лет, обладая лучшими средствами для статического анализа кода, Clang может заменить gcc/g++ в качестве компилятора C/C++ во некоторых дистрибутивах Linux и BSD-системах. Тем не менее, в обозримом будущем GCC останется основным компилятором Debian, так как одним из основных требований проекта является обеспечение надлежащей поддержки всех архитектур Debian, который насчитывается 11 официальных и 6 неофициальных. К сожалению Clang в полной мере пока поддерживает только архитектуры X86-32, X86-64 и ARM.


URL: http://sylvestre.ledru.info/blog/sylvestre/2012/02/29/rebuil...
Новость: https://www.opennet.ru/opennews/art.shtml?num=33281

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру