İngilizceFransızcaİspanyolca

Ad


OnWorks favicon'u

abi-compliance-checker - Bulutta Çevrimiçi

Ubuntu Online, Fedora Online, Windows çevrimiçi öykünücüsü veya MAC OS çevrimiçi öykünücüsü üzerinden OnWorks ücretsiz barındırma sağlayıcısında abi-uyumluluk denetleyicisini çalıştırın

Bu komut, Ubuntu Online, Fedora Online, Windows çevrimiçi emülatörü veya MAC OS çevrimiçi emülatörü gibi birden fazla ücretsiz çevrimiçi iş istasyonumuzdan birini kullanarak OnWorks ücretsiz barındırma sağlayıcısında çalıştırılabilen abi-uyumluluk denetleyicisidir.

Program:

ADI


abi-compliance-checker - paylaşılan C/C++ kitaplığının ABI uyumluluğunu karşılaştırma aracı
sürümler

TANIM


ADI:
ABI Uyumluluk Denetleyicisi (abi-uyum denetleyicisi) Bir
C/C++ kitaplığı API'sı

AÇIKLAMA:
ABI Uyumluluk Denetleyicisi (ABICC), geriye dönük ikili ve
paylaşılan bir C/C++ kitaplığının kaynak düzeyinde uyumluluğu. Araç, başlık dosyalarını kontrol eder
ve eski ve yeni sürümlerin paylaşılan kitaplıklarını (*.so) ve API'deki değişiklikleri analiz eder ve
İkili ve/veya kaynak düzeyinde uyumluluğu bozabilecek ABI (ABI=API+derleyici ABI):
çağrı yığınındaki değişiklikler, v-tablo değişiklikleri, kaldırılan semboller, yeniden adlandırılan alanlar vb.
İkili uyumsuzluk, uygulamaların çökmesine veya yanlış davranışına neden olabilir
yeni bir tane üzerinde çalışırlarsa, bir kitaplığın eski bir sürümüyle oluşturulmuştur. Kaynak
uyumsuzluk, yeni bir kitaplık sürümüyle yeniden derleme hatalarına neden olabilir.

Araç, yazılım kitaplıklarının geliştiricileri ve
geriye dönük uyumluluk sağlamakla ilgilenen işletim sistemleri, yani
çalıştırılacak veya daha yeni kitaplık sürümleriyle yeniden derlenecek eski uygulamalar.

Ayrıca araç, uygulamaların yeni sürümlere taşınabilirliğini kontrol etmek için ISV'ler tarafından kullanılabilir.
kütüphane sürümleri. Uyarlanırken bulunan sorunlar dikkate alınabilir.
yeni bir kütüphane sürümüne uygulama.

Bu araç ücretsiz bir yazılımdır: altında yeniden dağıtabilir ve/veya değiştirebilirsiniz.
GNU LGPL veya GNU GPL şartları.

KULLANIMI:
abi-uyum-denetleyicisi [seçenekler]

ÖRNEK:
abi-uyum-denetleyicisi -lib ADI -eski ESKİ.xml -yeni YENİ.xml

OLD.xml ve NEW.xml, XML tanımlayıcılarıdır:



1.0





/path1/to/başlık(lar)/ /path2/to/başlık(lar)/

...





/path1/to/library(ler)/ /path2/to/library(ler)/

...



Hizmetler SEÇENEKLER:
-h|-yardım

Bu yardımı yazdırın.

-i|-bilgi

Tüm bilgileri yazdırın.

-v|-sürüm

Sürüm bilgilerini yazdırın.

-döküm

Araç sürümünü (1.99.14) yazdırın ve başka bir şey yapmayın.

GENEL SEÇENEKLER:
-l|-lib|-kütüphane ADI

Kitaplık adı (sürüm olmadan).

-d1|-eski|-o YOL

1. (eski) kitaplık sürümünün tanımlayıcısı. Aşağıdakilerden biri olabilir:

1. XML tanımlayıcısı (VERSION.xml dosyası):



1.0





/path1/to/başlık(lar)/ /path2/to/başlık(lar)/

...





/path1/to/library(ler)/ /path2/to/library(ler)/

...



...

2. tarafından oluşturulan ABI dökümü boşaltma seçenek 3. Başlıklı ve/veya paylaşılan dizin
kütüphaneler 4. Tek başlık dosyası

2-4 tanımlayıcı türü kullanıyorsanız, sürüm numaralarını belirtmelisiniz.
ile -v1 ve -v2 seçenekleri de.

Daha fazla bilgi için, bakın:

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

-d2|-yeni|-n YOL

2. (yeni) kitaplık sürümünün tanımlayıcısı.

boşaltma|-dump-abi YOL

Giriş XML tanımlayıcısı için kitaplık ABI dökümü oluşturun. her yere transfer edebilirsin
ve tanımlayıcı yerine geçmek. Ayrıca aracı hata ayıklamak için kullanılabilir.

ABI dökümünün desteklenen sürümleri: 2.0<=V<=3.2

EKSTRA SEÇENEKLER:
Uygulama|-uygulama YOLU

Bu seçenek, birinin kontrol edilmesi gereken uygulamayı belirtmesine izin verir.
yeni kütüphane sürümüne taşınabilirlik.

-statik-lib'ler

Paylaşılanlar yerine statik kitaplıkları kontrol edin. bu bölümü
XML tanımlayıcısı, statik kitaplıkların konumuna işaret etmelidir.

-gcc-yolu PATH

Normal (ana bilgisayar) GCC yerine kullanılacak çapraz GCC derleyicisinin yolu.

-gcc-ön eki ÖNEK

GCC araç zinciri öneki.

-gcc-seçenekleri seçmesi

Ek derleyici seçenekleri.

-sistem kökü DIR

Alternatif kök dizini belirtin. Araç, dahil etme yollarını arayacaktır.
DIR/usr/include ve DIR/usr/lib dizinleri.

-v1|-versiyon1 NUM

Tanımlayıcı dışında 1. kitaplık sürümünü belirtin. Bu seçenek, aşağıdaki durumlarda gereklidir:
alternatif bir tanımlayıcı türü tercih ettiler (bkz. -d1 seçenek).

Genel durumda, bunu XML-tanımlayıcısında belirtmelisiniz:



VERSION



-v2|-versiyon2 NUM

Tanımlayıcının dışında 2. kitaplık sürümünü belirtin.

-vnum NUM

Oluşturulan ABI dökümünde kitaplık sürümünü belirtin. bu bölümü
bu durumda giriş XML tanımlayıcısının üzerine yazılacaktır.

-s|-katı

Tüm uyumluluk uyarılarını sorun olarak ele alın. Bir dizi "Düşük" önem düzeyi ekleyin
aracın dönüş değerine ilişkin sorunlar.

-yalnızca başlıklar

Paylaşılan kitaplıklar olmadan başlık dosyalarını kontrol edin. Çalıştırması kolaydır, ancak
yanlış pozitiflerle ve tespit edilmeden düşük kaliteli uyumluluk raporu
eklenen/kaldırılan semboller.

Alternatif olarak, "yok" kelimesini de yazabilirsiniz. bölümündeki
XML tanımlayıcısı:



Yok



-göster-retval

Raporda sembolün dönüş türünü gösterin.

-semboller-listesi PATH

Bu seçenek, bir kişinin bir sembol listesi içeren bir dosya belirtmesine izin verir (
C++) kontrol edilmelidir. Diğer semboller kontrol edilmeyecektir.

-tür listesi PATH

Bu seçenek, olması gereken türlerin bir listesini içeren bir dosyanın belirtilmesine izin verir.
kontrol. Diğer türler kontrol edilmeyecektir.

-atla-semboller PATH

Kontrol edilmemesi gereken sembollerin listesi.

-atlama türleri PATH

Kontrol edilmemesi gereken türlerin listesi.

-başlıklar-listesi PATH

Kontrol edilmesi/atılması gereken bir başlık listesi içeren dosya.

-atla-başlıklar PATH

Kontrol edilmemesi gereken başlık dosyalarının listesini içeren dosya.

-başlık ADI

Yalnızca bu başlığın ABI'sini Kontrol Edin/Dökün.

-kullanım dökümleri

Bir kitaplığın iki versiyonu için dökümler yapın ve dökümleri karşılaştırın. Bu artmalı
aracın performansını ve sistem belleği kullanımını azaltır.

-nostdinc

Başlık dosyaları için GCC standart sistem dizinlerinde arama yapmayın.

-döküm-sistemi ADI -sistem kökü DIR

DIR dizinindeki tüm paylaşılan kitaplıkları ve başlık dosyalarını bulun, XML oluşturun
tanımlayıcılar ve her kitaplık için ABI dökümleri yapın. ABI dökümlerinin sonuç seti şu şekilde olabilir:
karşılaştırıldı (--cmp-sistemleri) diğer işletim sürümü için oluşturulan diğeri ile
uyumluluklarını kontrol etmek için sistem. belirtmeyi unutmayın
-çapraz gcc hedef sisteminiz belirli bir GCC sürümü gerektiriyorsa seçenek
derleyici (ana bilgisayar GCC'sinden farklı). Sistem ABI dökümü şu şekilde oluşturulacaktır:

sys_dumps/NAME/ARCH

-döküm-sistemi AÇIKLAYICI.xml

Önceki seçenekle aynıdır ancak hedef sistemin XML tanımlayıcısını şu şekilde alır:
giriş, tanımlamanız gereken yer:

/* Birincil bölümler */



/* Sistemin adı */





/* Başlık dosyalarına giden yolların listesi ve/veya

başlık dosyalarına sahip dizinler, her satırda bir tane */





/* Paylaşılan kitaplıklara giden yolların listesi ve/veya

paylaşılan kitaplıkları olan dizinler, her satıra bir tane */



/* İsteğe bağlı bölümler */



/* Aranacak dizinlerin listesi

başlık dosyalarının otomatik olarak içerme yolları oluşturması için her satıra bir tane */





/* Aranacak dizinlerin listesi

paylaşılan kitaplıkların bağımlılıkları çözmesi için, her satıra bir tane */





/* Kullanılan araçların olduğu dizinlerin listesi

analiz için (GCC araç zinciri), satır başına bir tane */





/* GCC araç zinciri öneki.

Örnekler:
arm-linux-gnueabi arm-none-symbianelf */





/* Satır başına bir tane olmak üzere ek GCC seçenekleri */



-sysinfo DIR

Bu seçenek ile kullanılmalıdır -döküm-sistemi işletimin ABI'sini boşaltma seçeneği
sistemleri ve damping sürecini yapılandırın. Pakette bir örnek bulabilirsiniz:

modüller/Hedefler/{unix, symbian, pencereler}

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

İki sistem ABI dökümünü karşılaştırın. Her kitaplık için uyumluluk raporları oluşturun ve
kontrol edilen tüm kitaplıklar için test sonuçlarının özetini içeren ortak HTML raporu.
Rapor oluşturulacak:

sys_compat_reports/NAME1_to_NAME2/ARCH

-libs-listesi PATH

Tarafından atılması gereken kitaplıkların listesini içeren dosya -döküm-sistemi seçenek
veya tarafından kontrol edilmelidir. -cmp-sistemleri seçeneği.

-harici|-genişletilmiş

A kitaplığınızın diğer B kitaplığı tarafından kullanılması gerekiyorsa ve kontrol etmek istiyorsanız
ABI of B, o zaman bu seçeneği etkinleştirmelisiniz. Araç değişiklikleri kontrol edecek
A kütüphanesindeki herhangi bir fonksiyon tarafından kullanılmasalar bile tüm veri tiplerinde.
veri türleri, A kitaplığı ABI'sinin bir parçası değildir, ancak B'nin ABI'sinin bir parçası olabilir.
kütüphane.

Kısa şema:

app C (bozuk) -> lib B (bozuk ABI) -> lib A (kararlı ABI)

-q|-sessiz

Tüm mesajları stdout ve stderr yerine dosyaya yazdırın. Varsayılan yol (olabilir
tarafından değiştirildi -log-yolu seçenek):

günlükler/run.log

-stdout

Analiz sonuçlarını (uyumluluk raporları ve ABI dökümleri) yerine stdout'a yazdırın
dosya oluşturma. Bu, boru verilerinin diğer programlara aktarılmasına izin verir.

-rapor formatı FMT

Uyumluluk raporunun biçimini değiştirin. Biçimler:

htm - HTML biçimi (varsayılan) xml - XML ​​biçimi

-döküm biçimi FMT

ABI dökümünün biçimini değiştirin. Biçimler:

perl - Data::Dumper biçimi (varsayılan) xml - XML ​​biçimi

-xml

Takma ad: --rapor formatı=xml or --dump-formatı=xml

-dil DİL

Kitaplık dilini ayarlayın (C veya C++). Araç yapamıyorsa bu seçeneği kullanabilirsiniz.
bir dili otomatik olarak algıla. Bu seçenek, C-kütüphane başlıklarını kontrol etmek için faydalı olabilir.
(--lang=C) içinde --yalnızca başlıklar or --Genişletilmiş modları.

-ARCH MİM

Kitaplık mimarisini ayarlayın (x86, x86_64, ia64, arm, ppc32, ppc64, s390, vb.). bu
seçenek, araç girişin doğru mimarisini algılayamıyorsa kullanışlıdır.
nesneler.

-ikili|-bin|-abi

Yalnızca "İkili" uyumluluk sorunlarını göster. Rapor oluştur:

compat_reports/LIB_NAME/V1_to_V2/abi_compat_report.html

-kaynak|-kaynak|-api

Yalnızca "Kaynak" uyumluluk sorunlarını göster. Rapor oluştur:

compat_reports/LIB_NAME/V1_to_V2/src_compat_report.html

-limitten etkilenen LİMİT

Değiştirilen açıklamanın altında listelenen etkilenen sembollerin maksimum sayısı
raporu yazın.

DİĞER SEÇENEKLER:
-test

Dahili testleri çalıştırın. Bir örnek kitaplığın iki ikili uyumsuz sürümünü oluşturun ve
uyumluluklarını kontrol etmek için aracı çalıştırın. Bu seçenek, birinin olup olmadığını kontrol etmesini sağlar.
araç mevcut ortamda doğru şekilde çalışıyor.

-test dökümü

ABI dökümleri oluşturma, okuma ve karşılaştırma yeteneğini test edin.

-hata ayıklama

Hata ayıklama modu. Hata ayıklama bilgilerini ekrana yazdırın. Ara analiz aşamalarını kaydedin
hata ayıklama dizininde:

hata ayıklama/LIB_NAME/VERSION/

Ayrıca kullanmayı düşünün --çöplük araçta hata ayıklama seçeneği.

-cpp uyumlu

Başlık dosyalarınız C dilinde yazılmışsa ve G++ tarafından derlenebiliyorsa
derleyici (yani C++ anahtar kelimeleri kullanmayın), o zaman araca bundan bahsedebilir ve
analizi hızlandırın.

-cpp-uyumsuz

Giriş C başlık dosyaları C++ anahtar sözcükleri kullanıyorsa bu seçeneği ayarlayın.

-p|-params YOL

İşlev parametre adlarıyla dosya yolu. Raporu iyileştirmek için kullanılabilir
kitaplık başlık dosyalarının parametre adı olup olmadığını görüntüleyin. Dosya formatı:

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

...

-repath PATH

Kitaplığı boşaltmak için kullanılan XML tanımlayıcısında {RELPATH} makrolarını PATH ile değiştirin
ABI (bkz. boşaltma seçenek).

-relpath1 PATH

1. XML tanımlayıcısında {RELPATH} makrolarını PATH ile değiştirin (-d1).

-relpath2 PATH

2. XML tanımlayıcısında {RELPATH} makrolarını PATH ile değiştirin (-d2).

-döküm yolu PATH

ABI dökümünün oluşturulacağı bir *.abi.tar.gz veya *.abi dosya yolu belirtin. Varsayılan:

abi_dumps/LIB_NAME/LIB_NAME_VERSION.abi.tar.gz

-çeşit

ABI dökümlerinde verilerin sıralanmasını etkinleştirin.

-rapor yolu PATH

Uyumluluk raporuna giden yol. Varsayılan:

compat_reports/LIB_NAME/V1_to_V2/compat_report.html

-bin-rapor-yolu PATH

"İkili" uyumluluk raporuna giden yol. Varsayılan:

compat_reports/LIB_NAME/V1_to_V2/abi_compat_report.html

-src-rapor-yolu PATH

"Kaynak" uyumluluk raporuna giden yol. Varsayılan:

compat_reports/LIB_NAME/V1_to_V2/src_compat_report.html

-log-yolu PATH

Tüm mesajlar için günlük yolu. Varsayılan:

günlükler/LIB_NAME/VERSION/log.txt

-log1-yolu PATH

Bir kitaplığın 1. sürümü için günlük yolu. Varsayılan:

günlükler/LIB_NAME/V1/log.txt

-log2-yolu PATH

Bir kitaplığın 2. sürümü için günlük yolu. Varsayılan:

günlükler/LIB_NAME/V2/log.txt

-günlük-modu MOD

Kayıt modunu değiştirin. Modlar:

w - eski günlüklerin üzerine yaz (varsayılan) a - eski günlükleri ekle n - günlük yazma

-listeden etkilenen

HTML uyumluluğunun yanında uyumsuz sembollerin listesini içeren dosya oluşturun
bildiri. C++ sembollerini çözmek için GNU binutils'den 'c++filt @file' komutunu kullanın.
oluşturulan dosya. Varsayılan adlar:

abi_affected.txt src_affected.txt

-bileşen ADI

HTML raporunun başlığındaki ve özetindeki bileşen adı. Varsayılan:

kütüphane

-Başlık ADI

Rapor başlığındaki kitaplık adını NAME olarak değiştirin. Varsayılan olarak bir görüntülenecektir
tarafından belirtilen ad -l seçeneği.

-fazladan bilgi DIR

Ekstra bilgileri DIR'ye boşaltın.

-ekstra dökümü

Çeviri birimindeki tüm sembolleri içeren genişletilmiş ABI dökümü oluşturun.

-güç

Araç çalışmazsa bu seçeneği kullanmayı deneyin.

-hata payı SEVİYE

Giriş başlık dosyalarını başarıyla derlemek için bir dizi buluşsal yöntem uygulayın. Yapabilirsiniz
bunları bir dizide birleştirerek birkaç tolerans seviyesini etkinleştirin (örn. 13, 124,
vb.). Seviyeler:

1 - Linux dışı başlıkları atlayın (örn. win32_*.h, vb.) 2 - dahili başlıkları atlayın (örn.
*_p.h, impl/*.h, vb.) 3 - Linux dışı başlıkları içeren başlıkları atla 4 - atla
başkaları tarafından dahil edilen başlıklar

-hoşgörülü

En yüksek tolerans seviyesini etkinleştirin [1234].

-Kontrol

ABI dökümünün eksiksizliğini kontrol edin.

-hızlı

Hızlı analiz. Bazı şablon örneklerinin kontrolünü devre dışı bırakın.

-atla-dahili-semboller MODEL

Desenle eşleşen sembolleri kontrol etmeyin.

-atla-dahili-türler MODEL

Modelle eşleşen türleri kontrol etmeyin.

BİLDİRİ:
Uyumluluk raporu oluşturulacak:

compat_reports/LIB_NAME/V1_to_V2/compat_report.html

Günlük oluşturulacak:

günlükleri/LIB_NAME/V1/log.txt günlükleri/LIB_NAME/V2/log.txt

EXIT KODLAR:
0 - Uyumlu. Araç hatasız çalıştı. sıfır olmayan - Uyumsuz veya
araç hatalarla çalıştı.

DAHA BİLGİ:
http://lvc.github.io/abi-compliance-checker/

onworks.net hizmetlerini kullanarak abi-compliance-checker'ı çevrimiçi kullanın


Ücretsiz Sunucular ve İş İstasyonları

Windows ve Linux uygulamalarını indirin

  • 1
    Phaser
    Phaser
    Phaser hızlı, ücretsiz ve eğlenceli bir açık
    sunan kaynak HTML5 oyun çerçevesi
    WebGL ve Canvas oluşturma
    masaüstü ve mobil web tarayıcıları. Oyunlar
    ortak olabilir...
    Phaser'ı indirin
  • 2
    VASAL Motor
    VASAL Motor
    VASSAL, oluşturmak için bir oyun motorudur.
    geleneksel tahtanın elektronik versiyonları
    ve kart oyunları. için destek sağlar
    oyun parçası oluşturma ve etkileşim,
    ve ...
    VASSAL Motorunu İndirin
  • 3
    OpenPDF - iText çatalı
    OpenPDF - iText çatalı
    OpenPDF oluşturmak için bir Java kütüphanesidir.
    ve PDF dosyalarını bir LGPL ile düzenlemek ve
    MPL açık kaynak lisansı. OpenPDF
    LGPL/MPL iText'in açık kaynaklı halefi,
    var ...
    OpenPDF'i İndirin - iText Çatalı
  • 4
    SAGA CBS
    SAGA CBS
    SAGA - Otomatik Sistem
    Yerbilimsel Analizler - Bir Coğrafidir
    Bilgi Sistemi (GIS) yazılımı ile
    coğrafi veriler için muazzam yetenekler
    işleme ve ana...
    SAGA GIS'i indirin
  • 5
    Java/JTOpen için Araç Kutusu
    Java/JTOpen için Araç Kutusu
    IBM Toolbox for Java / JTOpen, bir
    destekleyen Java sınıfları kütüphanesi
    istemci/sunucu ve internet programlama
    modelleri OS/400 çalıştıran bir sisteme,
    i5/OS veya...
    Java/JTOpen için Toolbox'ı indirin
  • 6
    d3.js
    d3.js
    D3.js (veya Veriye Dayalı Belgeler için D3)
    sağlayan bir JavaScript kitaplığıdır.
    dinamik, etkileşimli veriler üretmek için
    web tarayıcılarında görselleştirmeler. D3 ile
    sen...
    D3.js'yi indirin
  • Daha fazla »

Linux komutları

Ad