IngleseFranceseSpagnolo

Ad


Favicon di OnWorks

abi-compliance-checker - Online nel cloud

Esegui abi-compliance-checker nel provider di hosting gratuito OnWorks su Ubuntu Online, Fedora Online, emulatore online Windows o emulatore online MAC OS

Questo è il comando abi-compliance-checker che può essere eseguito nel provider di hosting gratuito OnWorks utilizzando una delle nostre molteplici postazioni di lavoro online gratuite come Ubuntu Online, Fedora Online, emulatore online Windows o emulatore online MAC OS

PROGRAMMA:

NOME


abi-compliance-checker - strumento per confrontare la compatibilità ABI della libreria C/C++ condivisa
versioni

DESCRIZIONE


NOME:
ABI Compliance Checker (abi-compliance-checker) Verifica la retrocompatibilità di a
API della libreria C/C++

DESCRIZIONE:
ABI Compliance Checker (ABICC) è uno strumento per il controllo di file binari a ritroso e
compatibilità a livello di sorgente di una libreria C/C++ condivisa. Lo strumento controlla i file di intestazione
e librerie condivise (*.so) di vecchie e nuove versioni e analizza i cambiamenti nelle API e
ABI (ABI=API+ABI del compilatore) che potrebbe violare la compatibilità binaria e/o a livello di sorgente:
modifiche nello stack di chiamate, modifiche alla v-table, simboli rimossi, campi rinominati, ecc.
L'incompatibilità binaria può causare arresti anomali o comportamenti errati delle applicazioni
costruiti con una vecchia versione di una libreria se vengono eseguiti su una nuova. Fonte
l'incompatibilità può causare errori di ricompilazione con una nuova versione della libreria.

Lo strumento è destinato agli sviluppatori di librerie software e ai manutentori di
sistemi operativi interessati a garantire la retrocompatibilità, ovvero consentire
vecchie applicazioni da eseguire o da ricompilare con versioni di libreria più recenti.

Inoltre, lo strumento può essere utilizzato dagli ISV per verificare la portabilità delle applicazioni a nuovi
versioni della libreria. I problemi rilevati possono essere presi in considerazione durante l'adattamento del
applicazione a una nuova versione della libreria.

Questo strumento è un software gratuito: puoi ridistribuirlo e/o modificarlo sotto il
termini della GNU LGPL o GNU GPL.

USO:
abi-compliance-checker [opzioni]

ESEMPIO:
abi-compliance-checker -LIB NOME -vecchio VECCHIO.xml -nuovo NUOVO.xml

OLD.xml e NEW.xml sono descrittori XML:



1.0





/percorso1/a/intestazione(i)/ /percorso2/a/intestazione(i)/

...





/percorso1/della/biblioteca(e)/ /percorso2/della/libreria(e)/

...



INFORMAZIONI OPZIONI:
-h|-aiuto

Stampa questo aiuto.

-i|-informazioni

Stampa le informazioni complete.

-v|-versione

Stampa le informazioni sulla versione.

-versione dump

Stampa la versione dello strumento (1.99.14) e non fare nient'altro.

GENERALE OPZIONI:
-l|-lib|-libreria NOME

Nome della libreria (senza versione).

-d1|-vecchio|-o PERCORSO

Descrittore della prima (vecchia) versione della libreria. Potrebbe essere uno dei seguenti:

1. Descrittore XML (file VERSION.xml):



1.0





/percorso1/a/intestazione(i)/ /percorso2/a/intestazione(i)/

...





/percorso1/della/biblioteca(e)/ /percorso2/della/libreria(e)/

...



...

2. Dump ABI generato da dump opzione 3. Directory con intestazioni e/o condivisa
librerie 4. File di intestazione singola

Se stai usando un tipo di descrittore 2-4, dovresti specificare i numeri di versione
con -v1 ed -v2 anche le opzioni.

Per ulteriori informazioni, si prega di consultare:

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

-d2|-nuovo|-n PERCORSO

Descrittore della 2a (nuova) versione della libreria.

dump|-dump-abi PERCORSO

Crea un dump ABI della libreria per il descrittore XML di input. Puoi trasferirlo ovunque
e passare al posto del descrittore. Inoltre può essere utilizzato per il debug dello strumento.

Versioni supportate di ABI dump: 2.0<=V<=3.2

EXTRA OPZIONI:
-app|-applicazione PATH

Questa opzione consente di specificare l'applicazione che deve essere verificata
portabilità alla nuova versione della libreria.

-libs-statici

Controlla le librerie statiche invece di quelle condivise. Il sezione del
Il descrittore XML dovrebbe puntare alla posizione delle librerie statiche.

-gcc-percorso PERCORSO

Percorso al compilatore GCC incrociato da utilizzare al posto del solito GCC (host).

-gcc-prefisso PREFISSO

Prefisso della toolchain GCC.

-gcc-opzioni OPZIONI

Opzioni aggiuntive del compilatore.

-sysroot DIR

Specificare la directory principale alternativa. Lo strumento cercherà i percorsi di inclusione in
le directory DIR/usr/include e DIR/usr/lib.

-v1|-versione1 NUM

Specificare la prima versione della libreria al di fuori del descrittore. Questa opzione è necessaria se tu
hanno preferito un tipo di descrittore alternativo (vedi -d1 opzione).

In generale, dovresti specificarlo nel descrittore XML:



VERSIONE



-v2|-versione2 NUM

Specificare la seconda versione della libreria al di fuori del descrittore.

-vnum NUM

Specificare la versione della libreria nel dump ABI generato. Il sezione del
in questo caso il descrittore XML di input verrà sovrascritto.

-s|-rigorosa

Considera tutti gli avvisi di compatibilità come problemi. Aggiungi un numero di gravità "Bassa"
problemi al valore di ritorno dell'utensile.

-solo-intestazioni

Controlla i file di intestazione senza librerie condivise. È facile da eseguire, ma può fornire a
rapporto di compatibilità di bassa qualità con falsi positivi e senza rilevamento di
simboli aggiunti/rimossi.

In alternativa puoi scrivere la parola "nessuno" al sezione nel
Descrittore XML:



nessuna



-show-reval

Mostra il tipo di ritorno del simbolo nel report.

-elenco-simboli PERCORSO

Questa opzione permette di specificare un file con un elenco di simboli (nomi alterati in
C++) che dovrebbe essere controllato. Gli altri simboli non verranno controllati.

-elenco-tipi PERCORSO

Questa opzione consente di specificare un file con un elenco di tipi che dovrebbero essere
controllato. Altri tipi non verranno selezionati.

-skip-simboli PERCORSO

L'elenco dei simboli che non devono essere controllati.

-salta-tipi PERCORSO

L'elenco dei tipi che non devono essere controllati.

-elenco-intestazioni PERCORSO

Il file con un elenco di intestazioni, che dovrebbe essere controllato/scaricato.

-salta-intestazioni PERCORSO

Il file con l'elenco dei file di intestazione, che non dovrebbe essere controllato.

-intestazione NOME

Controlla/scarica l'ABI solo di questa intestazione.

-use-dump

Crea dump per due versioni di una libreria e confronta i dump. Questo dovrebbe aumentare
le prestazioni dello strumento e ridurre l'utilizzo della memoria di sistema.

-nostdin

Non cercare nelle directory di sistema standard di GCC i file di intestazione.

-sistema-discarica NOME -sysroot DIR

Trova tutte le librerie condivise e i file di intestazione nella directory DIR, crea XML
descrittori e creare dump ABI per ogni libreria. Il set di risultati dei dump ABI può essere
rispetto (--cmp-sistemi) con l'altro creato per un'altra versione di funzionamento
sistema per verificarne la compatibilità. Non dimenticare di specificare
-cross-gcc opzione se il tuo sistema di destinazione richiede una versione specifica di GCC
compilatore (diverso dal GCC host). Il dump ABI del sistema verrà generato per:

sys_dumps/NOME/ARCH

-sistema-discarica DESCRITTORE.xml

Uguale all'opzione precedente ma accetta un descrittore XML del sistema di destinazione come
input, dove dovresti descriverlo:

/* Sezioni primarie */



/* Nome del sistema */





/* L'elenco dei percorsi ai file di intestazione e/o

directory con file di intestazione, uno per riga */





/* L'elenco dei percorsi alle librerie condivise e/o

directory con librerie condivise, una per riga */



/* Sezioni opzionali */



/* Elenco delle directory da cercare

affinché i file di intestazione generino automaticamente i percorsi di inclusione, uno per riga */





/* Elenco delle directory da cercare

per le librerie condivise per risolvere le dipendenze, una per riga */





/* Elenco delle directory con gli strumenti utilizzati

per l'analisi (toolchain GCC), uno per riga */





/* Prefisso della toolchain GCC.

Consigli d'uso:
arm-linux-gnueabi arm-none-symbianelf */





/* Opzioni GCC aggiuntive, una per riga */



-sysinfo DIR

Questa opzione dovrebbe essere utilizzata con -sistema-discarica opzione per scaricare ABI di funzionamento
sistemi e configurare il processo di dumping. Puoi trovare un campione nella confezione:

moduli/Obiettivi/{unix, symbian, windows}

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

Confronta due dump ABI di sistema. Crea rapporti di compatibilità per ogni libreria e il
report HTML comune che include il riepilogo dei risultati dei test per tutte le librerie controllate.
Il rapporto sarà generato per:

sys_compat_reports/NAME1_to_NAME2/ARCH

-lista-libs PERCORSO

Il file con un elenco di librerie, che dovrebbe essere scaricato dal -sistema-discarica opzione
o dovrebbe essere controllato dal -sistemi cmp opzione.

-est|-esteso

Se la tua libreria A dovrebbe essere utilizzata da un'altra libreria B e vuoi controllare
l'ABI di B, allora dovresti abilitare questa opzione. Lo strumento verificherà le modifiche
in tutti i tipi di dati, anche se non sono utilizzati da alcuna funzione nella libreria A. Tale
i tipi di dati non fanno parte dell'ABI della libreria A, ma possono far parte dell'ABI del B
biblioteca.

Lo schema breve è:

app C (rotto) -> lib B (rotto ABI) -> lib A (stabile ABI)

-q|-silenzioso

Stampa tutti i messaggi sul file invece che su stdout e stderr. Percorso predefinito (può essere
cambiato da -log-percorso opzione):

logs/esegui.log

-Stdout

Stampa i risultati dell'analisi (report di compatibilità e dump ABI) su stdout anziché su
creazione di un file. Ciò consentirebbe di trasferire i dati ad altri programmi.

-formato-report FMT

Modifica il formato del rapporto di compatibilità. Formati:

htm - formato HTML (predefinito) xml - formato XML

-formato-dump FMT

Modifica il formato del dump ABI. Formati:

perl - Formato Data::Dumper (predefinito) xml - Formato XML

-xml

Alias ​​per: --formato-report=xml or --formato-dump=xml

-Long LUNGO

Imposta la lingua della libreria (C o C++). Puoi usare questa opzione se lo strumento non è in grado di farlo
rilevare automaticamente una lingua. Questa opzione può essere utile per controllare le intestazioni della libreria C
(--lang=C) in --solo-intestazioni or --esteso modalità.

-arco ARCH

Imposta l'architettura della libreria (x86, x86_64, ia64, arm, ppc32, ppc64, s390, ecc.). Il
l'opzione è utile se lo strumento non è in grado di rilevare l'architettura corretta dell'input
oggetti.

-binario|-bin|-abi

Mostra solo problemi di compatibilità "Binaria". Genera rapporto su:

compat_reports/LIB_NAME/V1_to_V2/abi_compat_report.html

-fonte|-src|-api

Mostra solo problemi di compatibilità "Sorgente". Genera rapporto su:

compat_reports/LIB_NAME/V1_to_V2/src_compat_report.html

-limitato LIMITE

Il numero massimo di simboli interessati elencati nella descrizione della modifica
digitare il rapporto.

ALTRO OPZIONI:
-Test

Esegui test interni. Creare due versioni binarie incompatibili di una libreria di esempio e
eseguire lo strumento per verificarne la compatibilità. Questa opzione consente di verificare se
lo strumento funziona correttamente nell'ambiente corrente.

-discarico di prova

Testare la capacità di creare, leggere e confrontare dump ABI.

-debug

Modalità di debug. Stampa le informazioni di debug sullo schermo. Salva le fasi di analisi intermedie
nella directory di debug:

debug/NOME_LIB/VERSIONE/

Considera anche l'utilizzo di --scarico opzione per il debug dello strumento.

-cpp-compatibile

Se i tuoi file di intestazione sono scritti in linguaggio C e possono essere compilati da G++
compilatore (cioè non usare parole chiave C++), quindi puoi dire allo strumento di questo e
velocizzare l'analisi.

-cpp-incompatibile

Imposta questa opzione se i file di intestazione C di input utilizzano parole chiave C++.

-p|-params PERCORSO

Percorso del file con i nomi dei parametri della funzione. Può essere utilizzato per migliorare il rapporto
visualizza se i file di intestazione della libreria non hanno nomi di parametro. Formato del file:

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

...

-relpath PERCORSO

Sostituisci le macro {RELPATH} in PATH nel descrittore XML utilizzato per scaricare la libreria
ABI (vedi dump opzione).

-relpath1 PERCORSO

Sostituisci le macro {RELPATH} in PATH nel primo descrittore XML (-d1).

-relpath2 PERCORSO

Sostituisci le macro {RELPATH} in PATH nel secondo descrittore XML (-d2).

-discarica-percorso PERCORSO

Specificare un percorso file *.abi.tar.gz o *.abi dove generare un dump ABI. Predefinito:

abi_dumps/LIB_NAME/LIB_NAME_VERSION.abi.tar.gz

-ordinare

Abilita l'ordinamento dei dati nei dump ABI.

-report-percorso PERCORSO

Percorso al rapporto di compatibilità. Predefinito:

compat_reports/LIB_NAME/V1_to_V2/compat_report.html

-bin-report-percorso PERCORSO

Percorso del rapporto di compatibilità "Binario". Predefinito:

compat_reports/LIB_NAME/V1_to_V2/abi_compat_report.html

-src-report-percorso PERCORSO

Percorso del rapporto di compatibilità "Origine". Predefinito:

compat_reports/LIB_NAME/V1_to_V2/src_compat_report.html

-log-percorso PERCORSO

Percorso del registro per tutti i messaggi. Predefinito:

logs/LIB_NAME/VERSION/log.txt

-log1-percorso PERCORSO

Percorso del registro per la prima versione di una libreria. Predefinito:

logs/LIB_NAME/V1/log.txt

-log2-percorso PERCORSO

Percorso del registro per la seconda versione di una libreria. Predefinito:

logs/LIB_NAME/V2/log.txt

-modalità-registrazione MODE

Cambia modalità di registrazione. Modalità:

w - sovrascrive i vecchi registri (impostazione predefinita) a - aggiunge i vecchi registri n - non scrive alcun registro

-lista-affetti

Genera file con l'elenco dei simboli incompatibili accanto alla compatibilità HTML
rapporto. Usa il comando 'c++filt @file' da GNU binutils per smantellare i simboli C++ in
il file generato. Nomi predefiniti:

abi_affected.txt src_affected.txt

-componente NOME

Il nome del componente nel titolo e nel riepilogo del report HTML. Predefinito:

biblioteca

-titolo NOME

Cambia il nome della libreria nel titolo del rapporto in NAME. Per impostazione predefinita verrà visualizzato a
nome specificato da -l opzione.

-informazioni-extra DIR

Invia informazioni extra a DIR.

-extra discarica

Crea un dump ABI esteso contenente tutti i simboli dall'unità di traduzione.

-vigore

Prova a usare questa opzione se lo strumento non funziona.

-tolleranza LIVELLO

Applicare una serie di euristiche per compilare correttamente i file di intestazione di input. Puoi
abilitare più livelli di tolleranza unendoli in un'unica stringa (es. 13, 124,
eccetera.). Livelli:

1 - salta le intestazioni non Linux (es. win32_*.h, ecc.) 2 - salta le intestazioni interne (es.
*_p.h, impl/*.h, ecc.) 3 - salta le intestazioni che includono intestazioni non Linux 4 - salta
intestazioni incluse da altri

-tollerante

Abilita il livello di tolleranza più alto [1234].

-dai un'occhiata

Verificare la completezza del dump ABI.

-Presto

Analisi rapida. Disabilita il controllo di alcune istanze del modello.

-skip-simboli-interni MODELLO

Non controllare i simboli abbinati al modello.

-salta-tipi-interni MODELLO

Non controllare i tipi corrispondenti al modello.

RAPPORTO:
Il rapporto di compatibilità verrà generato per:

compat_reports/LIB_NAME/V1_to_V2/compat_report.html

Il registro verrà generato per:

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

EXIT CODICI:
0 - Compatibile. Lo strumento è stato eseguito senza errori. diverso da zero - Incompatibile o
lo strumento è stato eseguito con errori.

ALTRO INFORMAZIONI:
http://lvc.github.io/abi-compliance-checker/

Usa abi-compliance-checker online utilizzando i servizi onworks.net


Server e workstation gratuiti

Scarica app per Windows e Linux

  • 1
    Phaser
    Phaser
    Phaser è un open veloce, gratuito e divertente
    framework di gioco HTML5 di origine che offre
    Rendering WebGL e Canvas attraverso
    browser Web desktop e mobili. Giochi
    può essere co...
    Scarica Phaser
  • 2
    Motore VASSAL
    Motore VASSAL
    VASSAL è un motore di gioco per creare
    versioni elettroniche della scheda tradizionale
    e giochi di carte. Fornisce supporto per
    rendering e interazione dei pezzi di gioco,
    e ...
    Scarica il motore VASSAL
  • 3
    OpenPDF - Fork di iText
    OpenPDF - Fork di iText
    OpenPDF è una libreria Java per la creazione
    e la modifica di file PDF con un LGPL e
    Licenza open source MPL. OpenPDF è il
    LGPL/MPL successore open source di iText,
    un ...
    Scarica OpenPDF - Fork di iText
  • 4
    SAGA GIS
    SAGA GIS
    SAGA - Sistema per Automatizzato
    Analisi Geoscientifiche - è un Geografico
    Software del sistema informativo (GIS) con
    immense capacità per i dati geografici
    elaborazione e ana...
    Scarica SAGA GIS
  • 5
    Toolbox per Java/JTOpen
    Toolbox per Java/JTOpen
    IBM Toolbox per Java / JTOpen è un
    libreria di classi Java che supportano il
    client/server e programmazione internet
    modelli su un sistema che esegue OS/400,
    i5/OS, o...
    Scarica Toolbox per Java/JTOpen
  • 6
    D3.js
    D3.js
    D3.js (o D3 per i documenti basati sui dati)
    è una libreria JavaScript che ti consente
    produrre dati dinamici e interattivi
    visualizzazioni nei browser web. Con D3
    tu...
    Scarica D3.js
  • Di Più "

Comandi Linux

  • 1
    adiff
    adiff
    abidiff - confronta gli ABI dei file ELF
    abidiff confronta il binario dell'applicazione
    Interfacce (ABI) di due librerie condivise
    in formato ELF. Emette un significato
    rapporto...
    Esegui abidif
  • 2
    abidw
    abidw
    abidw - serializza l'ABI di un ELF
    il file abidw legge una libreria condivisa in ELF
    formato ed emette una rappresentazione XML
    del suo ABI all’output standard. IL
    emesso...
    Corri costantemente
  • 3
    copac2xml
    copac2xml
    bibutils - conversione della bibliografia
    utilità...
    Esegui copac2xml
  • 4
    copto
    copto
    copt - ottimizzatore spioncino SYSNOPIS:
    copt file.. DESCRIZIONE: copt è un file
    ottimizzatore spioncino generico. Esso
    legge il codice dal suo input standard e
    scrive un...
    Corri copto
  • 5
    collect_stx_titles
    collect_stx_titles
    collect_stx_titles - raccogli il titolo
    dichiarazioni da documenti Stx...
    Eseguire collect_stx_titles
  • 6
    panca-gatling
    panca-gatling
    panca - benchmark http ...
    Esegui gatling-panca
  • Di Più "

Ad