Как я понимаю.
В скобках указана информация о поставщике. Ubuntu сообщает вам, что это сборка gcc для Ubuntu, а строка после нее — версия пакета.
Версия пакета делится на две части дефисом (если дефисов больше одного, для разделения используется последний). «Первоначальная версия» и «редакция Debian» (в некоторых случаях также может быть эпоха). «Первоначальная версия» может быть буквальным номером версии, используемым в исходной ветке, или может содержать другие указания, например +dfsg, чтобы указать, что несвободные файлы были удалены из исходного архива, или +git, чтобы указать, что то, что упаковано, на самом деле снимок git.
В этом случае «исходная версия» — «7.5.0» (такая же, как и буквальная исходная версия), а «версия Debian» — «3ubuntu1~18.04».
Изменения в «редакции Debian» обозначают изменения в Debian или его производных, которые не изменяют содержимое tar-архивов основной ветки разработки. Существует несколько основных принципов присвоения номера версии.
- Он должен, насколько это возможно, однозначно идентифицировать версию пакета. Очевидно, что это не может быть гарантировано на 100%, если несколько человек создают пакеты, но существует общепринятая практика, согласно которой производные должны включать уникальный «тег» в номера версий, которые они присваивают.
- Когда выпуск обновляется, номер версии должен увеличиваться (в соответствии с правилами сравнения), чтобы пользователи действительно получили обновление.
- Когда пакет находится в нескольких выпусках дистрибутива, версия в более новых выпусках должна быть выше, чем в более старых выпусках, чтобы пользователи, обновляющие свои системы, получали правильную версию.
- Оно должно быть значимым для пользователей.
Тильда в номерах версий особенная, в алгоритме сравнения версий она сравнивается ниже пустой строки, то есть "1.2.3-2~foo" < "1.2.3-2" < "1.2.3-2foo" обычно используется при переносе пакета в более раннюю версию, он также используется для представления предварительных версий.
Итак, теперь давайте разберем «ревизию Debian» этого пакета.
- «3» — это редакция самого Debian, указывающая на то, что пакет Debian, на котором был основан этот пакет Ubuntu, был третьей редакцией, которую они внесли в свою упаковку для 7.5.0.
- «ubuntu1» указывает, что этот пакет был изменен Ubuntu.
- ~ обычно указывает, что это какой-то бэкпорт.
- 18.04, по-видимому, указывает, в какой выпуск этот пакет был перенесен. Это следует из того, что я могу сказать, что это специальное использование. Существуют стандарты того, как бэкпорты, загруженные в репозиторий бэкпортов, должны иметь версии, но этот бэкпорт был выпущен как стабильное обновление, а не через репозиторий бэкпортов. Стабильный процесс обновления, по-видимому, не предписывает конкретную схему управления версиями, он предлагает использовать схему из процесса обновлений безопасности, но, похоже, это не распространяется на случай пакета с бэкпортом.