]> Sergey Matveev's repositories - stargrave-blog.git/commit
В Fedora планируют перейти на Clang вместо GCC
authorSergey Matveev <stargrave@stargrave.org>
Fri, 5 Jun 2020 11:19:44 +0000 (14:19 +0300)
committerSergey Matveev <stargrave@stargrave.org>
Fri, 5 Jun 2020 11:27:00 +0000 (14:27 +0300)
commit5a4dd3ee6ecd9088c9700a98a15ef3d64666dbe8
tree4b825dc642cb6eb9a060e54bf8d69288fbee4904
parent9c336029790030739b22b5fd77e540c3f6051fda
В Fedora планируют перейти на Clang вместо GCC

https://www.opennet.ru/opennews/art.shtml?num=53097
В комментариях обратили внимание что в OpenMandriva уже в 2015 было
сделано. Ну... FreeBSD перешла на Clang уже в 2014-ом. Собственно, я
прям с того времени на Clang-е и сижу, да и сейчас, будучи C-разрабом
и пишу (хотя приходится проверять мой код и под GCC 4.x). Буквально для
считанных пакетов (типа сборки UEFI загрузчика для bhyve) нужен GCC в
явном виде (как минимум, в той версии порта что у меня). С ходу не могу
сказать влияет ли Clang на производительность. В 2014-ом вроде как
говорили что он хуже оптимизирует. Я ещё застал времена когда
компилирование ядра FreeBSD на K6-2 с более оптимизированными опциями
компиляции под мой процессор реально давало осязаемый прирост, то сейчас
уже давно не замечаю ничего.

Опыта C разработки у меня никакого. Впервые увидел я разукрашенные
сообщения от компилятора именно на Clang-е и только годами спустя в
каких-то модных GCC версиях. Clang мне нравится вроде бы прям огромным
количеством проверок кода -- действительно сильно помогая и тыкая меня в
носом что я бы и не заметил. Плюс clang-format, clang-tidy. Другие
инструменты не получилось использовать, ибо сильно завязаны на CMake или
многие sanitizer-ы работают не работают на FreeBSD. Но что мне в нём не
нравится: время сборки всего этого LLVM/Clang. У меня создалось
впечатление что 80%+ времени сборки FreeBSD занимает именно LLVM/Clang.
Современный GCC не знаю, но GCC 4.x -- на порядок или даже ещё больше
собирался быстрее. Но это операция конечно не частая.