Como testar a compatibilidade binária automaticamente?
Pergunta
Pode ser feito antes de compilar, comparando o código? Há alguma ferramenta já fazendo isso?
Solução
Você pode achar isto interessante: Ferramenta de análise estática para detectar quebras de ABI em C ++
Outras dicas
Verificador de conformidade da ABI - Uma ferramenta para verificar a compatibilidade de API/ABI para trás de uma biblioteca C/C ++:
abi-compliance-checker -lib NAME -old OLD.abidump -new NEW.abidump
*.Bidump Arquivos são despejos de ABI de versões antigas e novas da biblioteca geradas pelo Abi Dumper ferramenta.
eu verifico - interface C OBI/API verificador:
icheck --canonify -o old_version -I/usr/include/foo/ bar.h
icheck --compare -o results.txt old_version new_version
shlib-compat - Verificador de compatibilidade da ABI que usa informações de depuração anão:
python shlib-compat -vv OLD.so NEW.so
Lembro -me de Purify tinha alguma funcionalidade para verificar a compatibilidade entre as construções, Dê uma olhada aqui.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow