1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
|
NAME:
Vtable-Dumper - a tool to list content of virtual tables in a C++ shared library
It is intended for developers of software libraries and maintainers of Linux
distributions who are interested in ensuring backward binary compatibility.
The tool is developed by Andrey Ponomarenko: https://abi-laboratory.pro/
INSTALL:
sudo make install prefix=/usr
REQUIRES:
libelf
libdl
libstdc++
USAGE:
vtable-dumper SHLIB
EXAMPLE:
vtable-dumper /usr/lib64/libstdc++.so.6
OPTIONS:
-mangled Show mangled symbol names
-demangled Show de-mangled symbol names
-help Display this help message
-dumpversion Print the tool version and don't do anything else
NOTE:
Make sure that all dependencies of a target library can be found by ldd. Otherwise
dlopen() may fail. Add paths to these libraries to LD_LIBRARY_PATH in this case.
SAMPLE OUTPUT:
Vtable for QIconEnginePlugin
_ZTV17QIconEnginePlugin: 22 entries
0 (int (*)(...)) 0
8 (int (*)(...)) (& _ZTI17QIconEnginePlugin)
16 (int (*)(...)) QIconEnginePlugin::metaObject() const
24 (int (*)(...)) QIconEnginePlugin::qt_metacast(char const*)
32 (int (*)(...)) QIconEnginePlugin::qt_metacall(QMetaObject::Call, int, void**)
40 (int (*)(...)) QIconEnginePlugin::~QIconEnginePlugin()
48 (int (*)(...)) QIconEnginePlugin::~QIconEnginePlugin()
56 (int (*)(...)) QObject::event(QEvent*)
64 (int (*)(...)) QObject::eventFilter(QObject*, QEvent*)
72 (int (*)(...)) QObject::timerEvent(QTimerEvent*)
80 (int (*)(...)) QObject::childEvent(QChildEvent*)
88 (int (*)(...)) QObject::customEvent(QEvent*)
96 (int (*)(...)) QObject::connectNotify(char const*)
104 (int (*)(...)) QObject::disconnectNotify(char const*)
112 (int (*)(...)) __cxa_pure_virtual
120 (int (*)(...)) __cxa_pure_virtual
128 (int (*)(...)) -0x00000000000010
136 (int (*)(...)) (& _ZTI17QIconEnginePlugin)
144 (int (*)(...)) _ZThn16_N17QIconEnginePluginD1Ev
152 (int (*)(...)) _ZThn16_N17QIconEnginePluginD0Ev
160 (int (*)(...)) __cxa_pure_virtual
168 (int (*)(...)) __cxa_pure_virtual
|