Вы здесь

Компилятор «LCC» (ТВГИ.00500-01)

Фирменный оптимизирующий компилятор языков C, C++, Fortran.

Цена по прайс-листу
Информация
Характеристики
Поддержка

Фирменный компилятор компании АО «МЦСТ» — разработчика архитектуры Эльбрус. Поддерживает языки программирования C, C++, Fortran. Во многом совместим с компилятором GCC (GNU Compiler Collection) — как по параметрам запуска, так и по GNU-расширениям языков. Обладает развитыми средствами оптимизации генерируемого машинного кода, позволяющими выбирать между быстродействием программы и её размером, а также длительностью компиляции.

Выпускается для компьютеров архитектуры Эльбрус и SPARC (МЦСТ-R). Поставляется в составе Системы программирования «Эльбрус» — штатно вместе с операционной системой либо или отдельно, по договору поставки. Поддерживает операционные системы семейства Linux и QNX; описание варианта для QNX «Нейтрино» в ТВГИ.00935-01.

Кросс-компилятор — это вариант компилятора, функционирующий на компьютерах архитектуры x86-64 и при этом выдающий машинный код архитектуры Эльбрус или SPARC. Получить кросс-компилятор можно по запросу в службу поддержки при наличии лицензии на право использования обычного компилятора (системы программирования) — для этого необходимо сообщить модель компьютера (процессора), наименование и номер версии целевой операционной системы. Вместе с кросс-компилятором для удобства может быть предоставлен архив файлов предустановленной системы «Эльбрус Линукс», если она является целевой системой для сборки программ.

Версия LCC1.251.241.231.211.19
Год выпуска 2020 2019 2018 2016 2014
Поддержка C GCC≈ 7.3 7.3 5.5 4.8 4.4
C11 +
C99 + + + + +
C90 + + + + +
Поддержка C++ GCC≈ 7.3 7.3 5.5 4.8 4.4
C++20 ±
C++17 ± ±
C++14 + + + ±²
C++11 + + + ±²
C++03 + + + + +
C++98 + + + + +
Поддержка Fortran GCC≈ 5.5 5.5 4.9 4.9 4.4
F18 ± ±
F08 ± ± ± ±
F03 ± ± ± ±
F95 + + + + +

Знак „+“ означает, что стандарт поддержан полностью, „±“ означает поддержку в экспериментальном режиме и/или неполностью — см. сноски и документацию, „−“ означает отсутствие поддержки данного языкового стандарта в данной версии компилятора.

В графе „-std=” указан режим поддержки языкового стандарта по умолчанию. Другие режимы можно задать параметром „-std=” согласно приведённому перечню полностью или частично (экспериментально) поддерживаемых, в том числе с расширениями GNU.

¹ Стандарт C11 (ISO/IEC 9899:2011) в версиях LCC 1.21–1.24 был поддержан полностью за исключением необязательного расширения _Atomic.

² Стандарты C++11 (ISO/IEC 14882:2011) и C++14 (ISO/IEC 14882:2014) в версии LCC 1.21 были поддержаны полностью в языковой части, однако в библиотечной части отсутствовала поддержка классов std::exception_ptr и std::nested_exception — это было обусловлено отсутствием поддержки zero cost exceptions (0eh) со стороны компилятора на тот момент.

Дистрибутивы

Компилятор поставляется в составе Системы программирования «Эльбрус».