Как установить gcov-tool на RHEL?

Из документов RHEL7 , как сообщается в комментариях пользователя @val0x00ff:

In Red Hat Enterprise Linux 7, udev supports a number of different naming schemes. The default is to assign fixed names based on firmware, topology, and location information.

This has the advantage that the names are fully automatic, fully predictable, that they stay fixed even if hardware is added or removed (no re-enumeration takes place), and that broken hardware can be replaced seamlessly.

The disadvantage is that they are sometimes harder to read than the eth0 or wlan0 names traditionally used. For example: enp5s0.

(...)

By default, systemd will name interfaces using the following policy to apply the supported naming schemes:

  • Scheme 1: Names incorporating Firmware or BIOS provided index numbers for on-board devices (example: eno1), are applied if that information from the firmware or BIOS is applicable and available, else falling back to scheme 2.
  • Scheme 2: Names incorporating Firmware or BIOS provided PCI Express hotplug slot index numbers (example: ens1) are applied if that information from the firmware or BIOS is applicable and available, else falling back to scheme 3.
  • Scheme 3: Names incorporating physical location of the connector of the hardware (example: enp2s0), are applied if applicable, else falling directly back to scheme 5 in all other cases.
  • Scheme 4: Names incorporating interface's MAC address (example: enx78e7d1ea46da), is not used by default, but is available if the user chooses.
  • Scheme 5: The traditional unpredictable kernel naming scheme, is used if all other methods fail (example: eth0).

(упор минный)

3
30.06.2019, 16:12
2 ответа

Вам необходимо установить один из devtoolsetпакетов через yum. Я рекомендую devtoolset-8, так как это последняя версия, которую вы будете иметь в Ubuntu. devtoolset-6и devtoolset-7также есть, если вы предпочитаете один из них.

Во-первых, убедитесь, что репозитории rhel-server-rhscl-7-rpmsвключены. Вы можете просто включить их все:

subscription-manager repos --enable rhel*

После этого установитеdevtoolset-8:

yum install devtoolset-8*

Затем добавьте gcc из devtoolset в свою среду:

scl enable devtoolset-8 bash

Затем вы можете увидеть gcov-toolв наличии:

which gcov-tool

Он будет находиться в /opt/rh/devtoolset-8/root/usr/bin.

Другой способ получить gcov-tool— собрать gccиз исходников, но это гораздо сложнее

5
27.01.2020, 21:15

Может случиться так, что людям, которые будут искать это решение, на самом деле нужен способ получить один отчет из многих источников.

И они сталкиваются со следующими проблемами:

  • в разных операционных системах необходимо выполнить разные шаги для получения инструментов
  • *.gcda из разных версий ОС или компиляторов иногда невозможно объединить
  • машина, на которой вы запускаете слияние, может не совпадать с машиной, на которой вы скомпилировали двоичный файл (, что приведет к созданию несовместимых gcda ), даже может иметь другую ОС

Таким образом, общий способ достижения цели состоял в том, чтобы просто преобразовать *.gcda в любой текстовый формат разметки (, такой как html или xml ), а затем использовать один из существующих инструментов для объединения этих отчетов, не имеет значения где и на какой ОС.

Это не отвечает на вопрос выше, но эта идея может быть полезной для людей, которые когда-то сталкивались с вопросом выше.

ПЛЮСЫ :вы просто забываете о бинарных различиях и инструментах, связанных с ОС.

ПРОТИВ :Размер набора *.gcda в 20 -50 раз меньше, чем размер его XML-представления.

0
27.01.2020, 21:15

Теги

Похожие вопросы