backward/forward binary compatibility checker
thiago at kde.org
Wed Jul 29 08:31:36 BST 2009
Andrey Ponomarenko wrote:
> Colleagues, I'm a lead developer from Institute for System
>Programing of Russian Academy of Sciences and we are developing a free
>lightweight tool for checking backward/forward binary compatibility of
>shared C/C++ libraries in OS Linux. It checks interface signatures and
>data type definitions in two library versions (headers and shared
>objects) and searches differences that may lead to incompatibility
>according to ABI standards. We have released beta version of this tool
>and we'd like you to consider its usefulness for your project.
> The package with the latest version of tool is in the attachment.
>The wiki-page of binary compatibility checker is
I've tried the tool. Here are some initial reactions:
1) please align your XML-like structure properly. It looks sloppy.
2) the descriptor template is missing a / in the last section.
3) please add some output to abi-compliance-checker.pl -d; it took me
quite a while, reading the code, to find out it had created a file called
4) I made a typo in the gcc_options section and, when I ran the tool, I
$ /tmp/abi-compliance-checker-1.0.0-beta2/abi-compliance-checker.pl -l Qt
-d1 qt4.6 -d2 ../qt-4.5/qt4.5
checked headers: 0/1939 (0%) mv: cannot stat `Qt1.h*.tu': No such file or
ERROR: can't create gcc dump
After reading the source code, I found out about the header_compile_errors
subdir, where there was a message from gcc saying "gcc: unknown option -
fvisibility-inline-hidden". But the tool didn't help me. It was just a
cryptic error message.
5) in your wiki, you have KDE TechBase, “Policies/Binary Compatibility
Issues With C++” as a reference, but the link points to the old document.
Please update it to
I've now got the tool to run. I'll let you know what the results are.
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
PGP/GPG: 0x6EF45358; fingerprint:
E067 918B B660 DBD1 105C 966C 33F5 F005 6EF4 5358
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 189 bytes
Desc: This is a digitally signed message part.
More information about the kde-core-devel