АнглийскийФранцузскийИспанский

Значок OnWorks

abi-compliance-checker - онлайн в облаке

Запустите abi-compliance-checker в бесплатном хостинг-провайдере OnWorks через Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS

Это команда abi-compliance-checker, которую можно запустить в провайдере бесплатного хостинга OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.

ПРОГРАММА:

ИМЯ


abi-compliance-checker - инструмент для сравнения совместимости с ABI разделяемой библиотеки C / C ++
версии

ОПИСАНИЕ


ИМЯ:
ABI Compliance Checker (abi-compliance-checker) Проверка обратной совместимости
API библиотеки C / C ++

ОПИСАНИЕ:
ABI Compliance Checker (ABICC) - это инструмент для проверки обратных двоичных и
совместимость на уровне исходного кода общей библиотеки C / C ++. Инструмент проверяет файлы заголовков
и разделяемые библиотеки (* .so) старых и новых версий и анализирует изменения в API и
ABI (ABI = API + ABI компилятора), который может нарушить совместимость двоичного кода и / или исходного кода:
изменения в стеке вызовов, изменения v-таблицы, удаленные символы, переименованные поля и т. д.
Бинарная несовместимость может привести к сбою или некорректному поведению приложений.
построены со старой версией библиотеки, если они работают на новой. Источник
несовместимость может привести к ошибкам перекомпиляции с новой версией библиотеки.

Инструмент предназначен для разработчиков программных библиотек и сопровождающих
операционные системы, которые заинтересованы в обеспечении обратной совместимости, т. е. позволяют
старые приложения для запуска или перекомпиляции с новыми версиями библиотек.

Также инструмент может использоваться независимыми поставщиками программного обеспечения для проверки переносимости приложений на новые
версии библиотеки. Найденные проблемы можно учесть при адаптации
приложение к новой версии библиотеки.

Этот инструмент является бесплатным программным обеспечением: вы можете распространять и / или изменять его под
условия GNU LGPL или GNU GPL.

ПРИМЕНЕНИЕ:
abi-compliance-checker [параметры]

Пример:
abi-соответствие-чекер -lib ИМЯ -Старый СТАРЫЙ.xml -новый НОВЫЙ.xml

OLD.xml и NEW.xml - это XML-дескрипторы:



1.0





/ path1 / to / header (s) / / path2 / to / header (s) /

...





/ путь1 / к / библиотеке (-ям) / / путь2 / к / библиотеке (-ам) /

...



ИНФОРМАЦИЯ ОПЦИИ:
-h| -help

Распечатайте эту справку.

-i| -инфо

Распечатать полную информацию.

-v| -версия

Информация о версии для печати.

-дампверсия

Распечатайте версию инструмента (1.99.14) и больше ничего не делайте.

ОБЩАЯ ИНФОРМАЦИЯ ОПЦИИ:
-l| -lib | -библиотека ИМЯ

Название библиотеки (без версии).

-d1| -old | -o ПУТЬ

Дескриптор 1-й (старой) версии библиотеки. Это может быть одно из следующих:

1. XML-дескриптор (файл VERSION.xml):



1.0





/ path1 / to / header (s) / / path2 / to / header (s) /

...





/ путь1 / к / библиотеке (-ям) / / путь2 / к / библиотеке (-ам) /

...



...

2. Дамп ABI, созданный -дамп вариант 3. Каталог с заголовками и / или общим
библиотеки 4. Файл с одним заголовком

Если вы используете 2-4 типа дескрипторов, вам следует указать номера версий.
-v1 и -v2 варианты тоже.

Для получения дополнительной информации, пожалуйста, см.:

http://ispras.linuxbase.org/index.php/Library_Descriptor

-d2| -new | -n ПУТЬ

Дескриптор 2-й (новой) версии библиотеки.

-дамп| -dump-abi ПУТЬ

Создайте дамп библиотеки ABI для входного XML-дескриптора. Вы можете передать его куда угодно
и передать вместо дескриптора. Также его можно использовать для отладки инструмента.

Поддерживаемые версии дампа ABI: 2.0 <= V <= 3.2

ЭКСТРА ОПЦИИ:
-приложение| ПУТЬ приложения

Эта опция позволяет указать приложение, которое следует проверить на наличие
переносимость на новую версию библиотеки.

-статические-библиотеки

Проверяйте статические библиотеки вместо общих. В раздел
XML-дескриптор должен указывать на расположение статических библиотек.

-gcc-путь PATH

Путь к кросс-компилятору GCC для использования вместо обычного (основного) GCC.

-gcc-префикс ПРЕФИКС

Префикс инструментальной цепочки GCC.

-gcc-параметры КЛЮЧ

Дополнительные параметры компилятора.

-sroot DIR

Укажите альтернативный корневой каталог. Инструмент будет искать пути включения в
каталоги DIR / usr / include и DIR / usr / lib.

-v1| -версия1 ЧИСЛО

Укажите 1-ю версию библиотеки вне дескриптора. Этот вариант нужен, если вы
предпочли альтернативный тип дескриптора (см. -d1 опция).

В общем случае вы должны указать это в XML-дескрипторе:



Версия



-v2| -версия2 ЧИСЛО

Укажите вторую версию библиотеки вне дескриптора.

-vnum NUM

Укажите версию библиотеки в созданном дампе ABI. В раздел
входной XML-дескриптор в этом случае будет перезаписан.

-s| -строгий

Относитесь ко всем предупреждениям о совместимости как к проблемам. Добавьте число "Низкая" серьезность
проблемы с возвращаемой стоимостью инструмента.

-заголовки-только

Проверьте файлы заголовков без общих библиотек. Его легко запустить, но он может обеспечить
отчет о совместимости низкого качества с ложными срабатываниями и без обнаружения
добавлены / удалены символы.

В качестве альтернативы вы можете написать слово "нет" в раздел в
XML-дескриптор:



нет



-шоу-ретвал

Показать в отчете тип возвращаемого значения символа.

-символы-список PATH

Эта опция позволяет указать файл со списком символов (искаженные имена в
C ++), который следует проверить. Остальные символы не проверяются.

-типы-список PATH

Эта опция позволяет указать файл со списком типов, которые должны быть
проверил. Остальные типы проверяться не будут.

-skip-символы PATH

Список символов, которые не следует проверять.

-скип-типы PATH

Список типов, которые не следует проверять.

-заголовки-список PATH

Файл со списком заголовков, которые нужно проверить / выгрузить.

-skip-заголовки PATH

Файл со списком файлов заголовков, которые не нужно проверять.

-заголовок ИМЯ

Проверить / сбросить ABI только этого заголовка.

-использовать-свалки

Сделайте дампы для двух версий библиотеки и сравните дампы. Это должно увеличиться
производительность инструмента и уменьшить использование системной памяти.

-ностдинк

Не ищите файлы заголовков в стандартных системных каталогах GCC.

-dump-система ИМЯ -sroot DIR

Найдите все общие библиотеки и файлы заголовков в каталоге DIR, создайте XML
дескрипторов и сделайте дампы ABI для каждой библиотеки. Результирующий набор дампов ABI может быть
в сравнении (--cmp-системы) с другим, созданным для другой версии операционной
система, чтобы проверить их на совместимость. Не забудьте указать
-кросс-gcc вариант, если ваша целевая система требует определенной версии GCC
компилятор (отличный от хоста GCC). Системный дамп ABI будет создан для:

sys_dumps / NAME / ARCH

-dump-система ОПИСАНИЕ.xml

То же, что и предыдущий вариант, но принимает XML-дескриптор целевой системы как
input, где вы должны его описать:

/ * Первичные разделы * /



/ * Название системы * /





/ * Список путей к файлам заголовков и / или

каталоги с заголовочными файлами, по одному на строку * /





/ * Список путей к разделяемым библиотекам и / или

каталоги с разделяемыми библиотеками, по одному в строке * /



/ * Необязательные разделы * /



/ * Список каталогов для поиска

для файлов заголовков для автоматической генерации включаемых путей, по одному на строку * /





/ * Список каталогов для поиска

для разделяемых библиотек для разрешения зависимостей, по одной в строке * /





/ * Список каталогов с используемыми инструментами

для анализа (набор инструментов GCC), по одному в строке * /





/ * Префикс инструментальной цепочки GCC.

Примеры:
arm-linux-gnueabi arm-none-symbianelf * /





/ * Дополнительные параметры GCC, по одной на строку * /



-sysinfo DIR

Эту опцию следует использовать с -dump-система возможность сбросить ABI операционной
систем и настроить процесс сброса. Вы можете найти образец в упаковке:

модули / Цели / {unix, symbian, windows}

-cmp-системы -d1 sys_dumps / NAME1 / ARCH -d2 sys_dumps / NAME2 / ARCH

Сравните два дампа ABI системы. Создавайте отчеты о совместимости для каждой библиотеки и
общий HTML-отчет, включающий сводку результатов тестирования для всех проверенных библиотек.
Отчет будет создан для:

sys_compat_reports / NAME1_to_NAME2 / ARCH

-libs-список PATH

Файл со списком библиотек, которые должны быть выгружены -dump-система вариант
или должны быть проверены -cmp-системы опцию.

-доб.| -расширенный

Если ваша библиотека A должна использоваться другой библиотекой B, и вы хотите контролировать
ABI of B, то вы должны включить эту опцию. Инструмент проверит наличие изменений
во всех типах данных, даже если они не используются какой-либо функцией в библиотеке A. Такие
типы данных не являются частью ABI библиотеки A, но могут быть частью ABI библиотеки B.
библиотека.

Краткая схема:

приложение C (сломано) -> lib B (сломанный ABI) -> lib A (стабильный ABI)

-q| -тихий

Печатать все сообщения в файл вместо stdout и stderr. Путь по умолчанию (может быть
изменено -log-путь вариант):

журналы / run.log

-стандартный вывод

Выводить результаты анализа (отчеты о совместимости и дампы ABI) на стандартный вывод вместо
создание файла. Это позволит передавать данные другим программам.

-формат отчета FMT

Измените формат отчета о совместимости. Форматы:

htm - формат HTML (по умолчанию) xml - формат XML

-dump-формат FMT

Изменить формат дампа ABI. Форматы:

perl - Формат Data :: Dumper (по умолчанию) xml - формат XML

-xml

Псевдоним для: - формат отчета=XML or --dump-формат=XML

-ланг ДЛИННЫЙ

Установите язык библиотеки (C или C ++). Вы можете использовать эту опцию, если инструмент не может
автоматическое определение языка. Эта опция может быть полезна для проверки заголовков C-библиотеки.
(--lang=C) в --заголовки только or --расширенный режимы.

-арх ARCH

Установите архитектуру библиотеки (x86, x86_64, ia64, arm, ppc32, ppc64, s390 и т. Д.). В
опция полезна, если инструмент не может определить правильную архитектуру ввода
объекты.

-двоичный| -bin | -abi

Показывать только проблемы совместимости "Двоичный". Создать отчет для:

compat_reports / LIB_NAME / V1_to_V2 / abi_compat_report.html

-source| -src | -api

Показывать только проблемы совместимости "Исходный код". Создать отчет для:

compat_reports / LIB_NAME / V1_to_V2 / src_compat_report.html

-предел-затронутый ОГРАНИЧЕНИЯ

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

ДРУГИЕ ОПЦИИ:
-test

Выполните внутренние тесты. Создайте две несовместимые двоичные версии библиотеки примеров и
запустите инструмент, чтобы проверить их на совместимость. Эта опция позволяет проверить,
инструмент корректно работает в текущей среде.

-тест-дамп

Проверить умение создавать, читать и сравнивать дампы ABI.

-отлаживать

Режим отладки. Распечатать отладочную информацию на экране. Сохранить промежуточные этапы анализа
в каталоге отладки:

отладка / LIB_NAME / ВЕРСИЯ /

Также рассмотрите возможность использования --свалка возможность отладки инструмента.

-cpp-совместимый

Если ваши файлы заголовков написаны на языке C и могут быть скомпилированы G ++
компилятор (т.е. не используйте ключевые слова C ++), тогда вы можете сообщить инструменту об этом и
ускорить анализ.

-cpp-несовместимо

Установите этот параметр, если входные файлы заголовков C используют ключевые слова C ++.

-p| -params ПУТЬ

Путь к файлу с именами параметров функции. Может использоваться для улучшения отчета
проверьте, не имеют ли файлы заголовков библиотеки имена параметров. Формат файла:

func1;param1;param2;param3 ... func2;param1;param2;param3 ...

...

-relpath PATH

Заменить макрос {RELPATH} на PATH в XML-дескрипторе, используемом для выгрузки библиотеки.
ABI (см. -дамп опция).

-relpath1 PATH

Заменить макрос {RELPATH} на PATH в первом XML-дескрипторе (-d1).

-relpath2 PATH

Заменить макрос {RELPATH} на PATH во втором XML-дескрипторе (-d2).

-dump-путь PATH

Укажите путь к файлу * .abi.tar.gz или * .abi для создания дампа ABI. Дефолт:

abi_dumps / LIB_NAME / LIB_NAME_VERSION.abi.tar.gz

-Сортировать

Включить сортировку данных в дампах ABI.

-report-путь PATH

Путь к отчету о совместимости. Дефолт:

compat_reports / LIB_NAME / V1_to_V2 / compat_report.html

-bin-путь-отчета PATH

Путь к «двоичному» отчету о совместимости. Дефолт:

compat_reports / LIB_NAME / V1_to_V2 / abi_compat_report.html

-src-report-путь PATH

Путь к отчету о совместимости «Источник». Дефолт:

compat_reports / LIB_NAME / V1_to_V2 / src_compat_report.html

-log-путь PATH

Путь к журналу для всех сообщений. Дефолт:

журналы / LIB_NAME / ВЕРСИЯ / log.txt

-log1-путь PATH

Путь к журналу для 1-й версии библиотеки. Дефолт:

журналы / LIB_NAME / V1 / log.txt

-log2-путь PATH

Путь к журналу для 2-й версии библиотеки. Дефолт:

журналы / LIB_NAME / V2 / log.txt

-Режим ведения журнала РЕЖИМ

Измените режим ведения журнала. Режимы:

w - перезаписывать старые журналы (по умолчанию) a - добавлять старые журналы n - не записывать никакие журналы

-список затронутых

Сгенерировать файл со списком несовместимых символов рядом с HTML-совместимостью
отчет. Используйте команду 'c ++ filter @file' из GNU binutils, чтобы распутать символы C ++ в
сгенерированный файл. Имена по умолчанию:

abi_affected.txt src_affected.txt

-составная часть ИМЯ

Имя компонента в заголовке и сводке HTML-отчета. Дефолт:

библиотека

-заглавие ИМЯ

Измените имя библиотеки в заголовке отчета на NAME. По умолчанию будет отображаться
имя, указанное -l опцию.

-дополнительная информация DIR

Выгрузить дополнительную информацию в DIR.

-внешний дамп

Создать расширенный дамп ABI, содержащий все символы из единицы перевода.

-сила

Попробуйте использовать эту опцию, если инструмент не работает.

-толерантность УРОВЕНЬ

Примените набор эвристик для успешной компиляции файлов входных заголовков. Вы можете
включить несколько уровней допуска, объединив их в одну цепочку (например, 13, 124,
так далее.). Уровни:

1 - пропускать заголовки, отличные от Linux (например, win32 _ *. H и т. Д.) 2 - пропускать внутренние заголовки (например,
* _p.h, impl / *. h и т. д.) 3 - пропускать заголовки, которые включают заголовки, отличные от Linux 4 - пропускать
заголовки, добавленные другими

терпимый

Включите наивысший уровень допуска [1234].

-чек

Проверить полноту дампа ABI.

-быстро

Быстрый анализ. Отключить проверку некоторых экземпляров шаблона.

-skip-внутренние-символы ШАБЛОН

Не проверяйте символы, совпадающие с шаблоном.

-скип-внутренние-типы ШАБЛОН

Не проверяйте типы, соответствующие шаблону.

ОТЧЕТ:
Отчет о совместимости будет создан для:

compat_reports / LIB_NAME / V1_to_V2 / compat_report.html

Журнал будет создан для:

журналы / LIB_NAME / V1 / log.txt журналы / LIB_NAME / V2 / log.txt

ВЫХОД КОДЫ:
0 - Совместимо. Инструмент работал без ошибок. ненулевое значение - несовместимо или
инструмент работал с ошибками.

ЕЩЁ ИНФОРМАЦИЯ:
http://lvc.github.io/abi-compliance-checker/

Используйте abi-compliance-checker онлайн с помощью сервисов onworks.net


Бесплатные серверы и рабочие станции

Скачать приложения для Windows и Linux

  • 1
    субконвертер
    субконвертер
    Утилита для преобразования между различными
    формат подписки. Пользователи Shadowrocket
    следует использовать ss, ssr или v2ray в качестве цели.
    Вы можете добавить &remark= к
    Telegram-любимый HT...
    Скачать субконвертер
  • 2
    СВЭШ
    СВЭШ
    SWASH - это числовой
    инструмент для моделирования неустойчивости,
    негидростатический, со свободной поверхностью,
    вращательный поток и явления переноса
    в прибрежных водах как ...
    Скачать SWASH
  • 3
    VBA-M (Архивировано - сейчас на Github)
    VBA-M (Архивировано - сейчас на Github)
    Проект переехал в
    https://github.com/visualboyadvance-m/visualboyadvance-m
    Особенности:Создание читовСохранить состояниямульти
    система, поддерживает gba, gbc, gb, sgb,
    sgb2Т...
    Скачать VBA-M (в архиве — сейчас на Github)
  • 4
    Stacer
    Stacer
    Оптимизатор системы Linux и мониторинг
    Репозиторий Github:
    https://github.com/oguzhaninan/Stacer.
    Аудитория: конечные пользователи / рабочий стол. Пользователь
    интерфейс: Qt. Программирование Ла...
    Скачать Стасер
  • 5
    ОранжевыйФокс
    ОранжевыйФокс
    Форк TeamWinRecoveryProject (TWRP)
    с множеством дополнительных функций, редизайн
    и другие особенности: поддерживает высокие частоты и
    не-Treble ROMsОбновленное ядро ​​​​Oreo,
    построен ...
    Скачать OrangeFox
  • 6
    itop — ITSM CMDB с открытым исходным кодом
    itop - ITSM CMDB с открытым исходным кодом
    Портал ИТ-операций: полностью открытый
    источник, ITIL, веб-сервис
    инструмент управления, включающий полностью
    настраиваемая CMDB, система службы поддержки и
    документальный человек...
    Скачать itop - ITSM CMDB OpenSource
  • Больше »

Команды Linux

Ad