Wie Binärkompatibilität automatisch zu testen?
Frage
Kann es vor dem Kompilieren erfolgen, durch den Code zu vergleichen? Gibt es irgendwelche Werkzeuge bereits dies zu tun?
Lösung
Sie können diese interessant finden: Statische Analyse-Tool zur Erkennung ABI Brüche in C ++
Andere Tipps
ABI Compliance-Checker - ein Werkzeug zur Überprüfung rückwärts API / ABI-Kompatibilität von a C / C ++ Bibliothek:
abi-compliance-checker -lib NAME -old OLD.abidump -new NEW.abidump
*. Abidump Dateien sind ABI-Dumps von alten und neuen Bibliotheksversionen, die durch die ABI Dumper Werkzeug.
icheck - C-Schnittstelle ABI / API-Checker:
icheck --canonify -o old_version -I/usr/include/foo/ bar.h
icheck --compare -o results.txt old_version new_version
shlib-compat - ABI Kompatibilitätsprüfung, dass Anwendungen DWARF Debug-Informationen:
python shlib-compat -vv OLD.so NEW.so
Ich erinnere mich an Entschlacken einige Funktionen hatte die Kompatibilität zu überprüfen zwischen baut, hier einen Blick darauf werfen.