LINUX.ORG.RU

Избранные сообщения yugr

Почему gcc не версионирует свой рантайм?

Форум — Development

Приветствую! Друзья, расскажите, почему gcc не соблюдает собственные GNUтые правила libtool.

Например, картина для рантайма gcc 9.2:

/usr/lib/libasan.so.5.0.0
/usr/lib/libatomic.so.1.2.0      <- не меняется годами
/usr/lib/libgcc_s.so.1           <- постоянное значение как минимум с gcc 4.x.x
/usr/lib/libgdruntime.so.76.0.3
/usr/lib/libgfortran.so.5.0.0
/usr/lib/libgo.so.14.0.0
/usr/lib/libgomp.so.1.0.0        <- постоянное значение как минимум с gcc 4.x.x
/usr/lib/libgphobos.so.76.0.3
/usr/lib/libitm.so.1.0.0         <- не меняется годами
/usr/lib/liblsan.so.0.0.0        <- не меняется годами
/usr/lib/libobjc.so.4.0.0        <- не меняется годами
/usr/lib/libquadmath.so.0.0.0    <- постоянное значение как минимум с gcc 4.x.x
/usr/lib/libstdc++.so.6.0.27     <- многие годы вечный 6.0.x
/usr/lib/libtsan.so.0.0.0        <- не меняется годами
/usr/lib/libubsan.so.1.0.0       <- не меняется годами

Почему так?

  • Revision почти всегда 0. Должен увеличиваться с каждым релизом.
  • Minor ( =Age) почти всегда 0. Должен увеличиваться при добавлении новых интерфейсов.
  • Major ( =Current-Age) либо не меняется, либо меняется крайне неспешно. Должен увеличиваться при сломе обратной совместимости.

libstdc++.so версионируются, но странно. В gcc 9.2 она имеет обозначение 6.0.27, и в gcc 4.7.4 — 6.0.17. Если верить такому обозначению, то между этими версиями в библиотеку не было добавлено ни одного интерфейса, что бред.

Видно, что активно версионируются только libgo.so, libgphobos.so, libgdruntime.so.

 , ,

Deleted
()

Обновления компиляторов C, C+, Fortran

Форум — Development

В конце прошлого начале этого года ряд компаний по традиции обновили своикроссплатформенные компиляторы и дополнительные инструменты, прежде всего для распараллеливания вычислений, для разработки на языках C, C++ и Fortran (в обязательном порядке):

PGI 2020.1. Community Edition версия компилятора выходит пару раз в год и по условиям лицензии ей разрешается пользоваться год с момента выхода. Текущая такая версия PGI CE 19.10.

Intel Parallel Studio XE 2020.

Absoft Pro Fortran 2020 - для разработки только на Fortran.

NAG Fortran Compiller 7.0.

AOCC 2.1 - набор компиляторов на основе llvm 9.0 (clang, flang) с патчами от AMD. Предположу, что в состав входит flang на основе старого проекта, а не переименованный f18, который собираются включить в поставку llvm 11, если снова не опоздают.

Во всех, где это возможно, заявлена полная поддержка C++17, местами продолжили добавлять/обновлять начальную поддержку C++20 и Fortran 2018.

 , , , ,

grem
()