Angielskifrancuskihiszpański

Ulubiona usługa OnWorks

abi-compliance-checker - Online w chmurze

Uruchom narzędzie sprawdzania zgodności abi w bezpłatnym dostawcy hostingu OnWorks w systemie Ubuntu Online, Fedora Online, emulatorze online systemu Windows lub emulatorze online systemu MAC OS

Jest to polecenie abi-compliance-checker, które można uruchomić w bezpłatnym dostawcy hostingu OnWorks przy użyciu jednej z naszych wielu bezpłatnych stacji roboczych online, takich jak Ubuntu Online, Fedora Online, emulator online systemu Windows lub emulator online systemu MAC OS

PROGRAM:

IMIĘ


abi-compliance-checker - narzędzie do porównywania kompatybilności ABI współdzielonej biblioteki C/C++
Wersje

OPIS


NAZWA:
Narzędzie sprawdzania zgodności ABI (abi-compliance-checker) Sprawdza kompatybilność wsteczną a
API biblioteki C/C++

OPIS:
Narzędzie do sprawdzania zgodności ABI (ABICC) to narzędzie do sprawdzania wstecznych plików binarnych i
zgodność na poziomie źródłowym współdzielonej biblioteki C/C++. Narzędzie sprawdza pliki nagłówkowe
i współdzielonych bibliotek (*.so) starych i nowych wersji oraz analizuje zmiany w API i
ABI (ABI=API+kompilator ABI), które może zepsuć kompatybilność na poziomie binarnym i/lub na poziomie źródłowym:
zmiany w stosie wywołań, zmiany w tabeli v, usunięte symbole, pola o zmienionych nazwach itp.
Niekompatybilność plików binarnych może skutkować awarią lub nieprawidłowym zachowaniem aplikacji
zbudowane ze starej wersji biblioteki, jeśli działają na nowej. Źródło
niezgodność może skutkować błędami rekompilacji z nową wersją biblioteki.

Narzędzie przeznaczone jest dla twórców bibliotek oprogramowania i opiekunów
systemów operacyjnych, którzy są zainteresowani zapewnieniem kompatybilności wstecznej, tj
stare aplikacje do uruchomienia lub do ponownej kompilacji z nowszymi wersjami bibliotek.

Narzędzie to może być również wykorzystywane przez niezależnych dostawców oprogramowania do sprawdzania możliwości przenoszenia aplikacji na nowe
wersje biblioteczne. Znalezione problemy można uwzględnić podczas dostosowywania
aplikacji do nowej wersji biblioteki.

To narzędzie jest darmowym oprogramowaniem: możesz je rozpowszechniać i/lub modyfikować w ramach
warunki licencji GNU LGPL lub GNU GPL.

STOSOWANIE:
abi-compliance-checker [opcje]

PRZYKŁAD:
sprawdzanie zgodności abi -lib IMIĘ -stary STARY.xml -Nowy NOWOŚĆ.xml

OLD.xml i NEW.xml to deskryptory XML:



1.0





/ścieżka1/do/nagłówków/ /ścieżka2/do/nagłówków/

...





/ścieżka1/do/biblioteki/ /ścieżka2/do/biblioteki/

...



INFORMACJE OPCJE:
-h|-pomoc

Wydrukuj tę pomoc.

-i|-informacje

Wydrukuj pełne informacje.

-v|-wersja

Wydrukuj informacje o wersji.

-dumpwersja

Wydrukuj wersję narzędzia (1.99.14) i nie rób nic więcej.

GENERAŁ OPCJE:
-l|-lib|-library NAZWA

Nazwa biblioteki (bez wersji).

-d1|-stary|-o ŚCIEŻKA

Deskryptor pierwszej (starej) wersji biblioteki. Może to być jeden z poniższych:

1. Deskryptor XML (plik VERSION.xml):



1.0





/ścieżka1/do/nagłówków/ /ścieżka2/do/nagłówków/

...





/ścieżka1/do/biblioteki/ /ścieżka2/do/biblioteki/

...



...

2. Zrzut ABI wygenerowany przez -wysypisko opcja 3. Katalog z nagłówkami i/lub udostępniony
biblioteki 4. Pojedynczy plik nagłówkowy

Jeśli używasz 2-4 typów deskryptorów, powinieneś określić numery wersji
w -v1 i -v2 opcje też.

Aby uzyskać więcej informacji, zobacz:

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

-d2|-nowy|-n ŚCIEŻKA

Deskryptor drugiej (nowej) wersji biblioteki.

-wysypisko|-dump-abi ŚCIEŻKA

Utwórz zrzut ABI biblioteki dla wejściowego deskryptora XML. Możesz go przenieść w dowolne miejsce
i pass zamiast deskryptora. Można go również używać do debugowania narzędzia.

Obsługiwane wersje zrzutu ABI: 2.0<=V<=3.2

DODATKOWY OPCJE:
App|-ścieżka aplikacji

Opcja ta pozwala na określenie aplikacji, która ma zostać sprawdzona
przenośność do nowej wersji biblioteki.

-statyczne-libs

Sprawdź biblioteki statyczne zamiast współdzielonych. The sekcja
Deskryptor XML powinien wskazywać lokalizację bibliotek statycznych.

-gcc-ścieżka PATH

Ścieżka do kompilatora krzyżowego GCC, którego należy używać zamiast zwykłego (hosta) GCC.

-gcc-przedrostek PREFIKSÓW

Przedrostek łańcucha narzędzi GCC.

-gcc-opcje OPTY

Dodatkowe opcje kompilatora.

-sysroot DIR

Określ alternatywny katalog główny. Narzędzie wyszuka ścieżki dołączania
katalogi DIR/usr/include i DIR/usr/lib.

-v1|-wersja1 NUM

Określ pierwszą wersję biblioteki poza deskryptorem. Ta opcja jest potrzebna, jeśli
woleli alternatywny typ deskryptora (patrz -d1 opcja).

W ogólnym przypadku powinieneś określić to w deskryptorze XML:



WERSJA



-v2|-wersja2 NUM

Określ drugą wersję biblioteki poza deskryptorem.

-liczb NUM

Określ wersję biblioteki w wygenerowanym zrzucie ABI. The sekcja
wejściowy deskryptor XML zostanie w tym przypadku nadpisany.

-s|-ścisłe

Traktuj wszystkie ostrzeżenia dotyczące zgodności jako problemy. Dodaj liczbę „Niskich” ważności
problemy z wartością zwracaną przez narzędzie.

-tylko nagłówki

Sprawdź pliki nagłówkowe bez bibliotek współdzielonych. Jest łatwy do uruchomienia, ale może zapewnić
raport zgodności o niskiej jakości z fałszywymi alarmami i bez wykrywania
dodane/usunięte symbole.

Alternatywnie możesz wpisać słowo „brak” w pliku sekcja w
Deskryptor XML:



Żaden



-pokaż-retval

Pokaż typ zwracany przez symbol w raporcie.

-symbole-lista PATH

Opcja ta pozwala na określenie pliku z listą symboli (zniekształcone nazwy w
C++), które należy sprawdzić. Inne symbole nie będą sprawdzane.

-lista-typów PATH

Ta opcja pozwala określić plik z listą typów, które powinny być
sprawdzony. Inne typy nie będą sprawdzane.

-pomiń-symbole PATH

Lista symboli, których nie należy sprawdzać.

-typy pomijania PATH

Lista typów, których nie należy sprawdzać.

-lista-nagłówków PATH

Plik z listą nagłówków, które należy sprawdzić/zrzucić.

-pomiń nagłówki PATH

Plik z listą plików nagłówkowych, których nie należy sprawdzać.

-nagłówek IMIĘ

Sprawdź/zrzuć ABI tylko tego nagłówka.

-użyj-zrzutów

Utwórz zrzuty dla dwóch wersji biblioteki i porównaj zrzuty. To powinno wzrosnąć
wydajność narzędzia i zmniejszyć zużycie pamięci systemowej.

-nostdinc

Nie szukaj plików nagłówkowych w standardowych katalogach systemowych GCC.

-zrzut-system IMIĘ -sysroot DIR

Znajdź wszystkie biblioteki współdzielone i pliki nagłówkowe w katalogu DIR, utwórz XML
deskryptorów i wykonaj zrzuty ABI dla każdej biblioteki. Zestaw wyników zrzutów ABI może być
porównany (--cmp-systems) z drugim utworzonym dla innej wersji działania
systemu w celu sprawdzenia ich kompatybilności. Nie zapomnij podać
-cross-gcc opcja, jeśli Twój system docelowy wymaga określonej wersji GCC
kompilator (inny niż host GCC). Systemowy zrzut ABI zostanie wygenerowany do:

sys_dumps/NAZWA/ARCH

-zrzut-system DESCRIPTOR.xml

Taka sama jak poprzednia opcja, ale pobiera deskryptor XML systemu docelowego jako
input, gdzie powinieneś to opisać:

/* Sekcje podstawowe */



/* Nazwa systemu */





/* Lista ścieżek do plików nagłówkowych i/lub

katalogi z plikami nagłówkowymi, po jednym w linii */





/* Lista ścieżek do bibliotek współdzielonych i/lub

katalogi z bibliotekami współdzielonymi, po jednym w wierszu */



/* Sekcje opcjonalne */



/* Lista katalogów do przeszukania

aby pliki nagłówkowe automatycznie generowały ścieżki, po jednej w linii */





/* Lista katalogów do przeszukania

dla bibliotek współdzielonych do rozwiązywania zależności, po jednej na linię */





/* Lista katalogów z używanymi narzędziami

do analizy (łańcuch narzędzi GCC), po jednym na linię */





/* Przedrostek łańcucha narzędzi GCC.

Przykłady:
arm-linux-gnueabi arm-none-symbianelf */





/* Dodatkowe opcje GCC, po jednej na linię */



-sysinfo DIR

Z tej opcji należy korzystać -zrzut-system możliwość zrzucenia ABI operacyjnego
systemów i skonfiguruj proces zrzutu. Próbkę znajdziesz w opakowaniu:

moduły/Cele/{unix, symbian, Windows}

-cmp-systems -d1 sys_dumps/NAME1/ARCH -d2 sys_dumps/NAME2/ARCH

Porównaj dwa systemowe zrzuty ABI. Twórz raporty zgodności dla każdej biblioteki i
wspólny raport HTML zawierający podsumowanie wyników testów dla wszystkich sprawdzanych bibliotek.
Raport zostanie wygenerowany do:

sys_compat_reports/NAME1_to_NAME2/ARCH

-lista-libs PATH

Plik z listą bibliotek, które powinny zostać zrzucone przez -zrzut-system opcja
lub powinien zostać sprawdzony przez -cmp-systems opcja.

-wewnętrzny|-rozszerzony

Jeśli twoja biblioteka A ma być używana przez inną bibliotekę B i chcesz ją kontrolować
ABI B, powinieneś włączyć tę opcję. Narzędzie sprawdzi zmiany
we wszystkich typach danych, nawet jeśli nie są one używane przez żadną funkcję w bibliotece A. Takie
typy danych nie są częścią ABI biblioteki A, ale mogą być częścią ABI biblioteki B
biblioteka.

Krótki schemat to:

aplikacja C (uszkodzona) -> lib B (uszkodzona ABI) -> lib A (stabilna ABI)

-q|-cicho

Wydrukuj wszystkie wiadomości do pliku zamiast stdout i stderr. Domyślna ścieżka (może być
zmienione przez -ścieżka dziennika opcja):

logs/run.log

- stdout

Wydrukuj wyniki analizy (raporty zgodności i zrzuty ABI) na standardowe wyjście zamiast
utworzenie pliku. Umożliwiłoby to przesyłanie danych do innych programów.

-format-raportu FMT

Zmień format raportu zgodności. Formaty:

htm - format HTML (domyślny) xml - format XML

-format-zrzutu FMT

Zmień format zrzutu ABI. Formaty:

perl - Format Data::Dumper (domyślny) xml - format XML

-xml

Alias ​​dla: --format-raportu=xml or --format zrzutu=xml

-długie JĘZYK

Ustaw język biblioteki (C lub C++). Możesz użyć tej opcji, jeśli narzędzie nie może
automatycznie wykrywa język. Ta opcja może być przydatna do sprawdzania nagłówków bibliotek C
(--język=C) w --tylko nagłówki or --przedłużony tryby.

-łuk ŁUK

Ustaw architekturę biblioteki (x86, x86_64, ia64, arm, ppc32, ppc64, s390, ect.). The
opcja jest przydatna, jeśli narzędzie nie może wykryć prawidłowej architektury wejścia
obiekty.

-dwójkowy|-bin|-abi

Pokaż tylko problemy ze zgodnością „Binarną”. Wygeneruj raport do:

compat_reports/LIB_NAME/V1_to_V2/abi_compat_report.html

-source|-źródło|-api

Pokaż tylko problemy ze zgodnością „Źródła”. Wygeneruj raport do:

compat_reports/LIB_NAME/V1_to_V2/src_compat_report.html

-ograniczenie-wpływ LIMIT

Maksymalna liczba dotkniętych symboli podana pod opisem zmiany
wpisz raport.

INNE OPCJE:
-test

Uruchom testy wewnętrzne. Utwórz dwie niezgodne binarnie wersje przykładowej biblioteki i
uruchom narzędzie, aby sprawdzić je pod kątem zgodności. Ta opcja pozwala sprawdzić, czy
narzędzie działa poprawnie w obecnym środowisku.

-zrzut testowy

Testuj możliwość tworzenia, odczytywania i porównywania zrzutów ABI.

-odpluskwić

Tryb debugowania. Wydrukuj informacje debugowania na ekranie. Zapisz pośrednie etapy analizy
w katalogu debugowania:

debugowanie/NAZWA_LIB/WERSJA/

Rozważ także użycie --wysypisko opcja debugowania narzędzia.

-cpp kompatybilny

Jeśli twoje pliki nagłówkowe są napisane w języku C i mogą być kompilowane przez G++
kompilator (tzn. nie używaj słów kluczowych C++), możesz poinformować o tym narzędzie i
przyspieszyć analizę.

-cpp-niekompatybilny

Ustaw tę opcję, jeśli wejściowe pliki nagłówkowe C używają słów kluczowych C++.

-p|-parametry ŚCIEŻKA

Ścieżka do pliku z nazwami parametrów funkcji. Można go wykorzystać do ulepszenia raportu
zobacz, czy pliki nagłówkowe bibliotek nie mają nazw parametrów. Format pliku:

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

...

-relpath PATH

Zamień makra {RELPATH} na PATH w deskryptorze XML używanym do zrzucania biblioteki
ABI (patrz -wysypisko opcja).

-relpath1 PATH

Zamień makra {RELPATH} na PATH w pierwszym deskryptorze XML (-d1).

-relpath2 PATH

Zamień makra {RELPATH} na PATH w drugim deskryptorze XML (-d2).

-ścieżka-zrzutu PATH

Określ ścieżkę pliku *.abi.tar.gz lub *.abi, w którym ma zostać wygenerowany zrzut ABI. Domyślny:

abi_dumps/LIB_NAME/LIB_NAME_VERSION.abi.tar.gz

-sortować

Włącz sortowanie danych w zrzutach ABI.

-ścieżka-raportu PATH

Ścieżka do raportu zgodności. Domyślny:

compat_reports/LIB_NAME/V1_to_V2/compat_report.html

-bin-ścieżka-raportu PATH

Ścieżka do raportu zgodności „Binarnego”. Domyślny:

compat_reports/LIB_NAME/V1_to_V2/abi_compat_report.html

-src-ścieżka-raportu PATH

Ścieżka do raportu zgodności „Źródła”. Domyślny:

compat_reports/LIB_NAME/V1_to_V2/src_compat_report.html

-ścieżka dziennika PATH

Ścieżka dziennika dla wszystkich wiadomości. Domyślny:

logs/NAZWA_LIB/WERSJA/log.txt

-log1-ścieżka PATH

Ścieżka dziennika dla pierwszej wersji biblioteki. Domyślny:

logs/LIB_NAME/V1/log.txt

-log2-ścieżka PATH

Ścieżka dziennika dla drugiej wersji biblioteki. Domyślny:

logs/LIB_NAME/V2/log.txt

-tryb-logowania TRYB

Zmień tryb rejestrowania. Tryby:

w - nadpisz stare logi (domyślnie) a - dołącz stare logi n - nie zapisuj żadnych logów

-dotyczy listy

Wygeneruj plik z listą niekompatybilnych symboli obok kompatybilności HTML
raport. Użyj polecenia „c++filt @file” z GNU binutils, aby rozdzielić symbole C++
wygenerowany plik. Domyślne nazwy:

abi_affected.txt src_affected.txt

-składnik IMIĘ

Nazwa komponentu w tytule i podsumowaniu raportu HTML. Domyślny:

biblioteka

-tytuł IMIĘ

Zmień nazwę biblioteki w tytule raportu na NAZWA. Domyślnie wyświetli się a
nazwa określona przez -l opcja.

-Informacje dodatkowe DIR

Zrzuć dodatkowe informacje do DIR.

-dodatkowy zrzut

Utwórz rozszerzony zrzut ABI zawierający wszystkie symbole z jednostki tłumaczeniowej.

-siła

Spróbuj użyć tej opcji, jeśli narzędzie nie działa.

-tolerancja POZIOM

Zastosuj zestaw heurystyk, aby pomyślnie skompilować wejściowe pliki nagłówkowe. Możesz
włączyć kilka poziomów tolerancji łącząc je w jeden ciąg (np. 13, 124,
itp.). Poziomy:

1 - pomiń nagłówki inne niż Linux (np. win32_*.h itp.) 2 - pomiń nagłówki wewnętrzne (np.
*_p.h, impl/*.h itp.) 3 - pomiń nagłówki zawierające nagłówki inne niż Linux 4 - pomiń
nagłówki dołączone przez innych

-tolerancyjny

Włącz najwyższy poziom tolerancji [1234].

-czek

Sprawdź kompletność zrzutu ABI.

-szybki

Szybka analiza. Wyłącz sprawdzanie niektórych instancji szablonu.

-pomiń-symbole-wewnętrzne WZÓR

Nie sprawdzaj symboli pasujących do wzorca.

-pomiń-typy-wewnętrzne WZÓR

Nie sprawdzaj typów pasujących do wzorca.

RAPORT:
Raport zgodności zostanie wygenerowany do:

compat_reports/LIB_NAME/V1_to_V2/compat_report.html

Dziennik zostanie wygenerowany do:

logs/LIB_NAME/V1/log.txt logs/LIB_NAME/V2/log.txt

EXIT KODY:
0 - Kompatybilny. Narzędzie uruchomiło się bez żadnych błędów. niezerowe - Niekompatybilne lub
narzędzie uruchomiło się z błędami.

WIĘCEJ INFORMACJE:
http://lvc.github.io/abi-compliance-checker/

Użyj abi-compliance-checker online, korzystając z usług onworks.net


Darmowe serwery i stacje robocze

Pobierz aplikacje Windows i Linux

  • 1
    Struktura internetowa Gin
    Struktura internetowa Gin
    Gin to niesamowicie szybki framework webowy
    napisany w Golang, który może wykonać do
    40 razy szybciej, dzięki
    API podobne do martini i niestandardowa wersja
    httptrasa...
    Pobierz Gin Web Framework
  • 2
    CEREUS LINUX
    CEREUS LINUX
    CEREUS LINUX oparty na MX LINUX con
    różne entornos de escritorios. To jest
    aplikacja, którą można również pobrać
    od
    https://sourceforge.net/projects/cereu...
    Pobierz CEREUS LINUX
  • 3
    Trener zadań
    Trener zadań
    Task Coach - Twoje przyjazne zadanie
    menedżer. Task Coach jest darmowym programem otwartym
    źródłowy menedżer zadań do wykonania. Wyrosło z
    frustracja związana z innymi programami nie
    obsługa kompozytu...
    Pobierz Trener zadań
  • 4
    Aparat bazy danych HyperSQL (HSQLDB)
    Aparat bazy danych HyperSQL (HSQLDB)
    HSQLDB to silnik relacyjnej bazy danych
    napisany w Javie, ze sterownikiem JDBC,
    zgodny z ANSI SQL:2016. Mały,
    szybki, wielowątkowy silnik i serwer
    z pamięcią...
    Pobierz silnik bazy danych HyperSQL (HSQLDB)
  • 5
    BATIK-ODZYSKIWANIE
    BATIK-ODZYSKIWANIE
    Project Recovery opracowany przez Batik
    Regeneracja Praca zespołowa z Indonezji, to
    Batik Recovery jest pochodną
    Oficjalny TWRP, który został zmodyfikowany przez
    rozwijać...
    Pobierz BATIK-RECOVERY
  • 6
    TightVNC
    TightVNC
    TightVNC to ulepszona wersja VNC,
    świetne darmowe narzędzie do zdalnego pulpitu.
    ulepszenia obejmują przyjazność dla przepustowości
    „Ścisłe” kodowanie, transfery plików
    w. ..
    Pobierz TightVNC
  • więcej »

Komendy systemu Linux

Ad