Подтвердить что ты не робот

Как проверить двоичную совместимость автоматически?

Можно ли это сделать до компиляции, сравнив код? Есть ли какие-либо инструменты, которые уже делают это?

4b9b3361

Ответ 2

ABI Compliance Checker - инструмент для проверки обратной совместимости API/ABI библиотеки C/С++:

abi-compliance-checker -lib NAME -old OLD.abidump -new NEW.abidump

*. Файлы abidump являются дампами ABI версий OLD и NEW, сгенерированными инструментом введите описание изображения здесь

icheck - Интерфейс C Интерфейс 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, которая использует информацию об отладке DWARF:

python shlib-compat -vv OLD.so NEW.so

Ответ 3

Я помню, что у Purify была некоторая функциональность, чтобы проверить совместимость между сборками, посмотреть здесь.