clang vs gcc (llvm vs build-essentials)
От: The Passenger Голландия  
Дата: 29.01.21 05:46
Оценка:
Что там сейчас на фронте по сабжу — кто что пользует?

Настала пора проапдейтить инструменты вот выбираю

По слангу — вроде более вменяемые сообщения об ошибках
производительность по обоим почти одинаковая
Подводные камни по лицензиям?

что еще сравнить?

Спасибо
Весь мир — Кремль, а люди в нем — агенты
Re: clang vs gcc (llvm vs build-essentials)
От: Nuzhny Россия https://github.com/Nuzhny007
Дата: 29.01.21 05:49
Оценка:
Здравствуйте, The Passenger, Вы писали:

TP>что еще сравнить?


Тесты на Форониксе можно посмотреть. Там обычно в среднем все норм, а в частностях может отличаться и сильно.
Re: clang vs gcc (llvm vs build-essentials)
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 29.01.21 06:03
Оценка:
Здравствуйте, The Passenger, Вы писали:

TP>Что там сейчас на фронте по сабжу — кто что пользует?


Зависит сильно. Шланг для разработчика комфортнее, как мне кажется. Лучше диагностика ошибок, новые прикольные фичи часто сначала в нем появляются, потом идут в другие компиляторы.
С поддержкой библиотек вроде не всё так гладко. Та же Куда имеет какие-то неприятные особенности при сборке Шлангом, какие пока не докопался, правда.
Re: clang vs gcc (llvm vs build-essentials)
От: Pzz Россия https://github.com/alexpevzner
Дата: 29.01.21 06:17
Оценка:
Здравствуйте, The Passenger, Вы писали:


TP>Что там сейчас на фронте по сабжу — кто что пользует?


Собирай обоими. Они вместе больше ошибок у тебя найдут, чем любой из них по-отдельности.
Re: clang vs gcc (llvm vs build-essentials)
От: Шахтер Интернет  
Дата: 29.01.21 19:32
Оценка:
Здравствуйте, The Passenger, Вы писали:


TP>Что там сейчас на фронте по сабжу — кто что пользует?


TP>Настала пора проапдейтить инструменты вот выбираю


TP>По слангу — вроде более вменяемые сообщения об ошибках

TP>производительность по обоим почти одинаковая
TP>Подводные камни по лицензиям?

TP>что еще сравнить?


TP>Спасибо


У нас в проекте используем оба.
Насколько я понимаю, если тебе нужен С++20, то лучше gcc. Если достаточно C++17, то большой разницы нет.
В XXI век с CCore.
Копай Нео, копай -- летать научишься. © Matrix. Парадоксы
Re[2]: clang vs gcc (llvm vs build-essentials)
От: watchmaker  
Дата: 29.01.21 21:17
Оценка:
Здравствуйте, Pzz, Вы писали:

Pzz>Собирай обоими. Они вместе больше ошибок у тебя найдут, чем любой из них по-отдельности.


Поддерживаю.

Правда с появлением санитайзеров (ubsan, asan, msan, tsan, и.пр) оказалось, что ошибки в рантайме они надёжнее ловят. То есть раньше часть ошибок находилась из-за того, что программа собранная gcc/clang/msvc в debug/release по другому себя вела в тестах при сравнении с программой, собранной в другой конфигурации компилятор-платформа. А теперь один запуск с условным ubsan отлично находит места с проблемами, даже если они и не изменили поведение программы глобально, а лишь потенциально могли изменить.

Зато использование двух компиляторов лучше защищает от написания кода, который не соответствует стандарту, а является либо случайно неотлкючённым расширением языка, либо ошибочно пропускается компилятором, хотя не должен.
Хотя тут есть и обратная сторона: если захочется воспользоваться какой-нибудь свежей возможностью новой версии языка, то есть риск, что придётся ждать пока эту возможность не реализует во всех используемых компиляторах (без багов).
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.