ELF Dissector in kdereview

Jonathan Riddell jr at jriddell.org
Wed Oct 30 19:08:14 GMT 2019


Yay it's green!
https://build.neon.kde.org/view/3%20unstable%20%E2%98%A3%20git%20master/job/bionic_unstable_neon-packaging_elf-dissector/


On Wed, 30 Oct 2019 at 17:30, Volker Krause <vkrause at kde.org> wrote:

> This one probably even affects all 32bit builds with Capstone available,
> not
> just ARM. I've pushed a fix for this.
>
> Thanks!
> Volker
>
> On Wednesday, 30 October 2019 11:02:21 CET Jonathan Riddell wrote:
> > That seems to have worked, it's moved onto the next 32-bit error
> >
> >
> https://build.neon.kde.org/job/bionic_unstable_neon-packaging_elf-dissector_
> > bin_armhf/8/console
> >
> > src/lib/disassmbler/disassembler.cpp:228:65: error: cannot convert
> > ‘uint64_t* {aka long long unsigned int*}’ to ‘size_t* {aka unsigned
> > int*}’ for argument ‘3’ to ‘bool cs_disasm_iter(csh, const uint8_t**,
> > size_t*, uint64_t*, cs_insn*)’*00:00:46*          if
> > (!cs_disasm_iter(handle, &data, &size, &address, insn)) {*00:00:46*
> >                                                               ^
> >
> > Jonathan
> >
> > On Tue, 29 Oct 2019 at 18:27, Volker Krause <vkrause at kde.org> wrote:
> > > I haven't recently tested it on 32bit ARM, I pushed a possible fix
> using a
> > > similar approach that has been applied for x86 already. If that doesn't
> > > help I
> > > need to find a 32bit ARM setup again here to properly debug it.
> > >
> > > Regards,
> > > Volker
> > >
> > > On Tuesday, 29 October 2019 11:29:44 CET Jonathan Riddell wrote:
> > > > I'm getting a build failure for this on 32-bit arm
> > >
> > >
> https://build.neon.kde.org/job/bionic_unstable_neon-packaging_elf-dissecto
> > > r_>
> > > > bin_armhf/7/console
> > > >
> > > > disassembler.cpp:149:34: error: ‘print_insn_little_arm’ was not
> > > > declared in this scope
> > > >
> > > > Is it expected to build on this architecture?  It builds fine on 64
> bit
> > >
> > > arm.
> > >
> > > > Jonathan
> > > >
> > > > On Sun, 27 Oct 2019 at 09:27, Volker Krause <vkrause at kde.org> wrote:
> > > > > Thanks again for the feedback, this has now been moved to
> > >
> > > extragear/sdk.
> > >
> > > > > On Saturday, 28 September 2019 13:01:11 CET Volker Krause wrote:
> > > > > > Hi,
> > > > > >
> > > > > > ELF Dissector has been moved to kdereview for the usual review
> > >
> > > process.
> > >
> > > > > > https://phabricator.kde.org/source/elf-dissector/
> > > > > >
> > > > > > ELF Dissector is a static analysis tool for ELF libraries and
> > > > >
> > > > > executables,
> > > > >
> > > > > > for doing things like inspecting forward and backward
> dependencies
> > >
> > > (on a
> > >
> > > > > > library or symbol level), identifying load-time performance
> > >
> > > bottlenecks
> > >
> > > > > > such as expensive static constructors or excessive relocations,
> or
> > >
> > > size
> > >
> > > > > > profiling of ELF files.
> > > > > >
> > > > > > ELF Dissector has been living in playground for more than 6 years
> > > > >
> > > > > because I
> > > > >
> > > > > > was sloppy following the right process. Since it's in active use
> by
> > > > > > a
> > > > >
> > > > > number
> > > > >
> > > > > > of people, is actively maintained and remains relevant and
> useful I
> > > > > > think
> > > > > > it's time to finally rectify this :)
> > > > > >
> > > > > > Regarding its final destination, extragear/sdk looks like the
> > > > > > obvious
> > > > > > candidate, as its such a niche tool that being part of the KDE
> > > > >
> > > > > Application
> > > > >
> > > > > > bundle is probably hard to argue. Once KDE Applications and the
> > >
> > > "release
> > >
> > > > > > service" are sufficiently decoupled, I'd of course be more than
> > >
> > > happy to
> > >
> > > > > > have it covered by the automatic release process.
> > > > > >
> > > > > > Regarding distribution, there is one annoying aspect, its
> dependency
> > >
> > > on
> > >
> > > > > > semi- public binutils API for accessing the C++ symbol demangling
> > >
> > > AST.
> > >
> > > > > That
> > > > >
> > > > > > works on conventional Linux distributions, but I failed to make
> it
> > >
> > > work
> > >
> > > > > as
> > > > >
> > > > > > a Flatpak due to that.
> > > > > >
> > > > > > Regarding portability, this currently only builds on ELF-based
> > >
> > > systems,
> > >
> > > > > > although theoretically this could be useful on a Windows host
> used
> > >
> > > for
> > >
> > > > > > embedded Linux development too. It's not impossible to make this
> > > > > > work
> > > > > > eventually I think, but it's probably quite some work.
> > > > > >
> > > > > > Thanks,
> > > > > > Volker
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20191030/c6374982/attachment.htm>


More information about the kde-core-devel mailing list