אנגליתצרפתיתספרדי

Ad


סמל OnWorks

abi-compliance-checker - מקוון בענן

הפעל את abi-compliance-checker בספק אירוח חינמי של OnWorks באמצעות אובונטו מקוון, פדורה מקוון, אמולטור מקוון של 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-table, סמלים שהוסרו, שדות ששינו את שמותיהם וכו'.
אי תאימות בינארית עלולה לגרום לקריסה או להתנהגות שגויה של יישומים
בנויים עם גרסה ישנה של ספרייה אם הם פועלים על גרסה חדשה. מָקוֹר
חוסר תאימות עלול לגרום לשגיאות הידור מחדש עם גרסת ספרייה חדשה.

הכלי מיועד למפתחי ספריות תוכנה ולתחזוקה של
מערכות הפעלה המעוניינות להבטיח תאימות לאחור, כלומר מאפשרות
יישומים ישנים להפעלה או להידור מחדש עם גרסאות ספרייה חדשות יותר.

הכלי יכול לשמש גם על ידי ISV לבדיקת ניידות יישומים לחדשים
גרסאות ספרייה. ניתן לקחת בחשבון בעיות שנמצאו בעת התאמת ה
יישום לגרסה חדשה של ספרייה.

הכלי הזה הוא תוכנה חופשית: אתה יכול להפיץ אותו מחדש ו/או לשנות אותו תחת
התנאים של GNU LGPL או GNU GPL.

נוֹהָג:
abi-compliance-checker [אפשרויות]

דוגמא:
בודק תאימות -לב שֵׁם -ישן OLD.xml -חָדָשׁ NEW.xml

OLD.xml ו-NEW.xml הם מתארי XML:



1.0





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

...





/path1/to/library(ies)/ /path2/to/library(ies)/

...



מידע אפשרויות:
-h|-עזרה

הדפס עזרה זו.

-i|-מידע

הדפס את המידע המלא.

-v|-גרסה

מידע על גרסת הדפסה.

-גרסת dump

הדפס את גרסת הכלי (1.99.14) ואל תעשה שום דבר אחר.

כללי אפשרויות:
-l|-lib|-ספריית NAME

שם הספרייה (ללא גרסה).

-ד1|-old|-o PATH

מתאר של גרסת הספרייה הראשונה (הישנה). זה עשוי להיות אחד מהבאים:

1. מתאר XML (קובץ VERSION.xml):



1.0





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

...





/path1/to/library(ies)/ /path2/to/library(ies)/

...



...

2. ABI dump שנוצר על ידי -מזבלה אפשרות 3. מדריך עם כותרות ו/או משותף
ספריות 4. קובץ כותרת בודד

אם אתה משתמש ב-2-4 סוגי מתאר, עליך לציין מספרי גרסה
עם -v1 ו -v2 גם אפשרויות.

לקבלת מידע נוסף, ראה:

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

-ד2|-new|-n PATH

מתאר של גרסת הספרייה השנייה (החדשה).

-מזבלה|-dump-abi PATH

צור dump של ספריית ABI עבור מתאר ה-XML של הקלט. אתה יכול להעביר אותו לכל מקום
ועובר במקום המתאר. כמו כן, ניתן להשתמש בו לאיתור באגים בכלי.

גרסאות נתמכות של ABI dump: 2.0<=V<=3.2

תוֹסֶפֶת אפשרויות:
-אפליקציה|-יישום PATH

אפשרות זו מאפשרת לציין את היישום שיש לבדוק עבורו
ניידות לגרסת הספרייה החדשה.

-static-libs

בדוק ספריות סטטיות במקום אלה המשותפות. ה סעיף של
XML-descriptor צריך להצביע על מיקום ספריות סטטיות.

-gcc-נתיב נתיב

נתיב ל-Cross GCC מהדר לשימוש במקום ה-GCC הרגיל (מארח).

-gcc-prefix PREFIX

קידומת שרשרת הכלים של GCC.

-gcc-options OPTS

אפשרויות מהדר נוספות.

-שורש DIR

ציין את ספריית השורש החלופית. הכלי יחפש נתיבים כוללים ב
ספריות DIR/usr/include ו-DIR/usr/lib.

-v1|-גרסה1 NUM

ציין את גרסת הספרייה הראשונה מחוץ לתיאור. אפשרות זו נחוצה אם אתה
העדיפו סוג מתאר חלופי (ראה -ד1 אוֹפְּצִיָה).

במקרה כללי, עליך לציין זאת ב-XML-descriptor:



גִרְסָה



-v2|-גרסה2 NUM

ציין את גרסת הספרייה השנייה מחוץ לתיאור.

-vnum NUM

ציין את גרסת הספרייה ב-ABI dump שנוצר. ה סעיף של
מתאר XML קלט ייחלף במקרה זה.

-s|-מחמיר

התייחס לכל אזהרות התאימות כבעיות. הוסף מספר של חומרת "נמוכה".
בעיות בערך ההחזר של הכלי.

-כותרות בלבד

בדוק קבצי כותרות ללא ספריות משותפות. זה קל להפעלה, אבל עשוי לספק א
דוח תאימות באיכות נמוכה עם תוצאות חיוביות שגויות וללא זיהוי של
סמלים שנוספו/הוסרו.

לחלופין אתה יכול לכתוב מילה "ללא" ל- סעיף ב
מתאר XML:



אף לא אחד



-show-reval

הצג את סוג ההחזרה של הסמל בדוח.

-סמלים-רשימת נתיב

אפשרות זו מאפשרת לציין קובץ עם רשימה של סמלים (שמות מעוותים ב
C++) שצריך לבדוק. סמלים אחרים לא יסומנו.

-סוגים-רשימת נתיב

אפשרות זו מאפשרת לציין קובץ עם רשימה של סוגים שצריך להיות
בָּדוּק. סוגים אחרים לא יבדקו.

-דילוג-סמלים נתיב

רשימת הסמלים שאסור לסמן.

-סוגי דילוג נתיב

רשימת הסוגים שאסור לבדוק.

-כותרות-רשימת נתיב

הקובץ עם רשימה של כותרות, שיש לבדוק/להשליך.

-דילוג על כותרות נתיב

הקובץ עם רשימת קובצי הכותרות, שאסור לסמן.

-כּוֹתֶרֶת שֵׁם

בדוק/dump ABI של כותרת זו בלבד.

-שימוש-מזבלות

צור dump עבור שתי גרסאות של ספרייה והשווה dumps. זה אמור להגדיל
את הביצועים של הכלי ולהקטין את השימוש בזיכרון המערכת.

-נוסטדינק

אל תחפש בספריות מערכת סטנדרטיות של GCC עבור קובצי כותרות.

-מערכת dump שֵׁם -שורש DIR

מצא את כל הספריות המשותפות וקבצי הכותרות בספריית DIR, צור XML
מתארים ולעשות dump ABI עבור כל ספריה. קבוצת התוצאות של השלכות ABI יכולה להיות
בהשוואה (--cmp-systems) עם השני נוצר עבור גרסה אחרת של הפעלה
מערכת על מנת לבדוק את התאימות שלהם. אל תשכח לפרט
-cross-gcc אפשרות אם מערכת היעד שלך דורשת גרסה מסוימת של GCC
מהדר (שונה מה-GCC המארח). מערכת ABI dump תיווצר כדי:

sys_dumps/NAME/ARCH

-מערכת dump DESCRIPTOR.xml

זהה לאפשרות הקודמת אבל לוקח מתאר XML של מערכת היעד כ
קלט, היכן עליך לתאר אותו:

/* חלקים ראשיים */



/* שם המערכת */





/* רשימת הנתיבים לקובצי כותרות ו/או

ספריות עם קבצי כותרת, אחת בכל שורה */





/* רשימת הנתיבים לספריות משותפות ו/או

ספריות עם ספריות משותפות, אחת בשורה */



/* קטעים אופציונליים */



/* רשימת ספריות שיש לחפש

עבור קבצי כותרות להפקה אוטומטית של נתיבי כולל, אחד בכל שורה */





/* רשימת ספריות שיש לחפש

עבור ספריות משותפות כדי לפתור תלות, אחת בכל שורה */





/* רשימת ספריות עם כלים בשימוש

לניתוח (שרשרת כלים של GCC), אחד בכל שורה */





/* קידומת שרשרת הכלים של GCC.

דוגמאות:
arm-linux-gnueabi arm-none-symbianelf */





/* אפשרויות נוספות של GCC, אחת בכל שורה */



-sysinfo DIR

יש להשתמש באפשרות זו עם -מערכת dump אפשרות לזרוק ABI של הפעלה
מערכות ולהגדיר את תהליך ההשלכה. ניתן למצוא דוגמה בחבילה:

מודולים/יעדים/{unix, symbian, windows}

-cmp-מערכות -ד1 sys_dumps/NAME1/ARCH -ד2 sys_dumps/NAME2/ARCH

השווה בין שתי זרימות מערכת ABI. צור דוחות תאימות עבור כל ספריה וה-
דוח HTML משותף כולל סיכום תוצאות הבדיקה עבור כל הספריות שנבדקו.
דוח יופק ל:

sys_compat_reports/NAME1_to_NAME2/ARCH

-libs-list נתיב

הקובץ עם רשימה של ספריות, שאמור להיזרק על ידי ה -מערכת dump אוֹפְּצִיָה
או צריך להיבדק על ידי -cmp-מערכות אוֹפְּצִיָה.

-קסט|-מורחב

אם ספרייה A שלך אמורה לשמש ספרייה B אחרת ואתה רוצה לשלוט
ה-ABI של B, אז עליך להפעיל את האפשרות הזו. הכלי יבדוק אם יש שינויים
בכל סוגי הנתונים, גם אם הם אינם בשימוש על ידי פונקציה כלשהי בספרייה A. כזה
סוגי נתונים אינם חלק מה-ABI של ספריית A, אך עשויים להיות חלק מה-ABI של ה-B
סִפְרִיָה.

הסכימה הקצרה היא:

אפליקציה C (שבור) -> lib B (ABI שבור) -> lib A (ABI יציב)

-q|-שקט

הדפס את כל ההודעות לקובץ במקום stdout ו-stderr. נתיב ברירת מחדל (יכול להיות
השתנה על ידי -log-path אוֹפְּצִיָה):

logs/run.log

-סטדout

הדפס תוצאות ניתוח (דוחות תאימות ו-ABI dumps) ל-stdout במקום
יצירת קובץ. זה יאפשר להעביר נתונים לתוכניות אחרות.

-פורמט-דוח FMT

שנה פורמט של דוח תאימות. פורמטים:

htm - פורמט HTML (ברירת מחדל) xml - פורמט XML

-פורמט dump FMT

שנה פורמט של ABI dump. פורמטים:

perl - Data::Dumper פורמט (ברירת מחדל) xml - פורמט XML

-xml

כינוי עבור: --פורמט דוח=xml or --פורמט dump=xml

-לאנג שפה

הגדר שפת ספרייה (C או C++). אתה יכול להשתמש באפשרות זו אם הכלי אינו יכול
זיהוי אוטומטי של שפה. אפשרות זו עשויה להיות שימושית לבדיקת כותרות C-library
(--lang=C) ב --כותרות בלבד or --מורחב מצבים.

-קֶשֶׁת קשת

הגדר את ארכיטקטורת הספרייה (x86, x86_64, ia64, arm, ppc32, ppc64, s390, וכו'). ה
אפשרות שימושית אם הכלי אינו יכול לזהות ארכיטקטורה נכונה של הקלט
חפצים.

-בינארי|-bin|-abi

הצג בעיות תאימות "בינאריות" בלבד. הפק דוח ל:

compat_reports/LIB_NAME/V1_to_V2/abi_compat_report.html

-מָקוֹר|-src|-api

הצג רק בעיות תאימות "מקור". הפק דוח ל:

compat_reports/LIB_NAME/V1_to_V2/src_compat_report.html

-מושפע מגבול להגביל

המספר המרבי של סמלים מושפעים המופיעים מתחת לתיאור השינוי
הקלד את הדוח.

אחר אפשרויות:
-מבחן

הפעל בדיקות פנימיות. צור שתי גרסאות בינאריות שאינן תואמות של ספריית דוגמה ו
הפעל את הכלי כדי לבדוק את תאימותם. אפשרות זו מאפשרת לבדוק אם
הכלי פועל כהלכה בסביבה הנוכחית.

-מבחן-dump

בדיקת יכולת ליצור, לקרוא ולהשוות dump ABI.

-לנפות

מצב איתור באגים. הדפס מידע על ניפוי באגים על המסך. שמור שלבי ניתוח ביניים
בספריית ניפוי הבאגים:

debug/LIB_NAME/VERSION/

שקול גם להשתמש --מזבלה אפשרות לאיתור באגים בכלי.

-cpp-תואם

אם קבצי הכותרות שלך כתובים בשפת C וניתן להרכיב אותם על ידי ה-G++
מהדר (כלומר אל תשתמש במילות מפתח C++), אז אתה יכול לספר לכלי על זה ו
להאיץ את הניתוח.

-cpp-לא תואם

הגדר אפשרות זו אם קבצי כותרת C של קלט משתמשים במילות מפתח C++.

-p|-params PATH

נתיב לקובץ עם שמות פרמטרי הפונקציה. זה יכול לשמש לשיפור הדוח
ראה אם ​​לקבצי כותרות הספרייה אין שמות פרמטרים. פורמט קובץ:

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

...

- relpath נתיב

החלף פקודות מאקרו {RELPATH} ל-PATH ב-XML-descriptor המשמש להשלכת הספרייה
ABI (ראה -מזבלה אוֹפְּצִיָה).

-relpath1 נתיב

החלף פקודות מאקרו {RELPATH} ל-PATH במתאר ה-XML הראשון (-ד1).

-relpath2 נתיב

החלף פקודות מאקרו {RELPATH} ל-PATH במתאר ה-XML השני (-ד2).

-שביל-מזבלה נתיב

ציין נתיב קובץ *.abi.tar.gz או *.abi היכן ליצור dump ABI. בְּרִירַת מֶחדָל:

abi_dumps/LIB_NAME/LIB_NAME_VERSION.abi.tar.gz

-סוג

אפשר מיון נתונים ב-ABI dumps.

-דוח-נתיב נתיב

נתיב לדוח תאימות. בְּרִירַת מֶחדָל:

compat_reports/LIB_NAME/V1_to_V2/compat_report.html

-bin-report-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 נתיב

נתיב יומן עבור כל ההודעות. בְּרִירַת מֶחדָל:

logs/LIB_NAME/VERSION/log.txt

-log1-נתיב נתיב

נתיב יומן עבור גרסה ראשונה של ספרייה. בְּרִירַת מֶחדָל:

logs/LIB_NAME/V1/log.txt

-log2-נתיב נתיב

נתיב יומן עבור גרסה 2 של ספרייה. בְּרִירַת מֶחדָל:

logs/LIB_NAME/V2/log.txt

-מצב רישום MODE

שנה מצב רישום. מצבים:

w - החלף יומנים ישנים (ברירת מחדל) a - הוסף יומנים ישנים n - אל תכתוב שום יומן

-מושפע מהרשימה

צור קובץ עם רשימת הסמלים הבלתי תואמים לצד תאימות HTML
להגיש תלונה. השתמש בפקודה 'c++filt @file' מ-GNU binutils כדי לבטל את הסמלי C++ ב
הקובץ שנוצר. שמות ברירת מחדל:

abi_affected.txt src_affected.txt

רכיב שֵׁם

שם הרכיב בכותרת ובסיכום דוח ה-HTML. בְּרִירַת מֶחדָל:

ספריה

-כותרת שֵׁם

שנה את שם הספרייה בכותרת הדוח ל-NAME. כברירת מחדל יוצג א
שם שצוין על ידי -l אוֹפְּצִיָה.

-מידע נוסף DIR

שלח מידע נוסף ל-DIR.

-מזבלה נוספת

צור dump ABI מורחב המכיל את כל הסמלים מיחידת התרגום.

כוח

נסה להשתמש באפשרות זו אם הכלי לא עובד.

-סוֹבלָנוּת רמה

החל קבוצה של היוריסטיות כדי להדר בהצלחה קבצי כותרות קלט. אתה יכול
אפשר מספר רמות סובלנות על ידי צירופן למחרוזת אחת (למשל 13, 124,
וכו.). רמות:

1 - דלג על כותרות שאינן של לינוקס (למשל win32_*.h וכו') 2 - דלג על כותרות פנימיות (למשל
*_p.h, impl/*.h וכו') 3 - דלג על כותרות הכוללות כותרות שאינן של לינוקס 4 - דלג
כותרות שנכללו על ידי אחרים

-סוֹבלָנִי

אפשר את רמת הסובלנות הגבוהה ביותר [1234].

-חשבון

בדוק את שלמות המזבלה של ABI.

-מָהִיר

ניתוח מהיר. השבת בדיקה של מופעי תבניות מסוימים.

-דילוג-פנימי-סמלים תַבְנִית

אל תבדוק סמלים המותאמים לתבנית.

-דילוג על סוגים פנימיים תַבְנִית

אל תבדוק סוגים המותאמים לתבנית.

להגיש תלונה:
דוח תאימות יופק ל:

compat_reports/LIB_NAME/V1_to_V2/compat_report.html

יומן יופק ל:

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

יְצִיאָה קודים:
0 - תואם. הכלי פעל ללא שגיאות. לא אפס - לא תואם או
הכלי רץ עם שגיאות.

נוסף מֵידָע:
http://lvc.github.io/abi-compliance-checker/

השתמש ב-abi-compliance-checker באינטרנט באמצעות שירותי onworks.net


שרתים ותחנות עבודה בחינם

הורד אפליקציות Windows & Linux

  • 1
    Phaser
    Phaser
    Phaser היא פתיחה מהירה, חינמית ומהנה
    מסגרת משחק מקור HTML5 שמציעה
    עיבוד WebGL ו-Canvas לרוחב
    דפדפני אינטרנט שולחניים וניידים. משחקים
    יכול להיות שותף...
    הורד את Phaser
  • 2
    מנוע VASSAL
    מנוע VASSAL
    VASSAL הוא מנוע משחק ליצירה
    גרסאות אלקטרוניות של לוח מסורתי
    ומשחקי קלפים. זה מספק תמיכה עבור
    עיבוד ואינטראקציה של חלקי משחק,
    ו...
    הורד את VASSAL Engine
  • 3
    OpenPDF - Fork of iText
    OpenPDF - Fork of iText
    OpenPDF היא ספריית Java ליצירה
    ועריכת קבצי PDF עם LGPL ו
    רישיון קוד פתוח MPL. OpenPDF הוא ה
    יורש הקוד הפתוח LGPL/MPL של iText,
    ...
    הורד את OpenPDF - Fork of iText
  • 4
    SAGA GIS
    SAGA GIS
    SAGA - מערכת לאוטומטיות
    ניתוחים גיאוגרפיים - הוא גיאוגרפי
    תוכנת מערכת מידע (GIS) עם
    יכולות עצומות לגיאודטה
    עיבוד ואנה...
    הורד את SAGA GIS
  • 5
    ארגז כלים עבור Java/JTOpen
    ארגז כלים עבור Java/JTOpen
    ארגז הכלים של IBM עבור Java / JTOpen הוא א
    ספריית מחלקות Java התומכות ב
    תכנות לקוח/שרת ואינטרנט
    דגמים למערכת עם OS/400,
    i5/OS, o...
    הורד את ארגז הכלים עבור Java/JTOpen
  • 6
    D3.js
    D3.js
    D3.js (או D3 עבור מסמכים מבוססי נתונים)
    היא ספריית JavaScript המאפשרת לך
    לייצר נתונים דינמיים ואינטראקטיביים
    הדמיות בדפדפני אינטרנט. עם D3
    אתה...
    הורד את D3.js
  • עוד »

פקודות לינוקס

Ad