• Re: Error when running dh_dwz (actually an error when running dwz(1))

    From Shengjing Zhu@21:1/5 to doko@debian.org on Sun Aug 7 14:00:01 2022
    Hi,

    On Wed, Jul 10, 2019 at 3:28 PM Matthias Klose <doko@debian.org> wrote:

    On 09.07.19 21:54, Boyuan Yang wrote:
    Dear -devel list,

    Looks like dh_dwz was recently added into debhelper and it is causing some FTBFS on one of my packages. It could be a bug of dwz itself but I'm looking
    for some help inside Debian first.

    Please try to build package marisa from its git packaging repo
    ( https://salsa.debian.org/input-method-team/marisa/commit/f5ff598466266b230d68c9db9f8e31281604b7a6
    ). The following error will pop up when dwz is called:

    =================
    [...]
    dh_dwz
    dwz: debian/ruby-marisa/usr/lib/x86_64-linux-gnu/ruby/2.5.0/marisa.so: Found
    compressed .debug_aranges section, not attempting dwz compression
    dh_dwz: dwz -q -- debian/ruby-marisa/usr/lib/x86_64-linux- gnu/ruby/2.5.0/marisa.so returned exit code 1
    make: *** [debian/rules:30: binary] Error 1
    dpkg-buildpackage: error: fakeroot debian/rules binary subprocess returned exit status 2
    =================

    I don't have much experience of dealing with debugging symbols so any hints would be appreciated.

    dwz currently doesn't handle compressed debug sections. There is some discussion, if dwz should decompress, do it's work and compress it again. However until then, don't use compressed debug sections. Apparently these are turned on by the upstream build system. debhelper maybe could warn about compressed debug sections in general. Would would you want to have those anyway?
    The packages are compressed, and you shouldn't care about the on-disk space when debugging.

    There's also discussion, about errors: https://sourceware.org/bugzilla/show_bug.cgi?id=24766
    Apparently the RPM based helpers ignore the return value of dwz, and leave the
    debug symbols unhandled. Again, debhelper could warn about such packages when
    built in compat12 mode.

    Now with golang-1.19, all Go packages ftbfs with

    dwz: Found compressed .debug_aranges section, not attempting dwz compression

    Could the debhelper ignore the dwz error? Or can a debhelper addon
    (e.g. dh-golang) be allowed to override dh_dwz globally?

    --
    Shengjing Zhu

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Shengjing Zhu@21:1/5 to zhsj@debian.org on Sun Aug 7 14:20:01 2022
    On Sun, Aug 7, 2022 at 7:53 PM Shengjing Zhu <zhsj@debian.org> wrote:

    Hi,

    On Wed, Jul 10, 2019 at 3:28 PM Matthias Klose <doko@debian.org> wrote:

    On 09.07.19 21:54, Boyuan Yang wrote:
    Dear -devel list,

    Looks like dh_dwz was recently added into debhelper and it is causing some
    FTBFS on one of my packages. It could be a bug of dwz itself but I'm looking
    for some help inside Debian first.

    Please try to build package marisa from its git packaging repo
    ( https://salsa.debian.org/input-method-team/marisa/commit/f5ff598466266b230d68c9db9f8e31281604b7a6
    ). The following error will pop up when dwz is called:

    =================
    [...]
    dh_dwz
    dwz: debian/ruby-marisa/usr/lib/x86_64-linux-gnu/ruby/2.5.0/marisa.so: Found
    compressed .debug_aranges section, not attempting dwz compression
    dh_dwz: dwz -q -- debian/ruby-marisa/usr/lib/x86_64-linux- gnu/ruby/2.5.0/marisa.so returned exit code 1
    make: *** [debian/rules:30: binary] Error 1
    dpkg-buildpackage: error: fakeroot debian/rules binary subprocess returned
    exit status 2
    =================

    I don't have much experience of dealing with debugging symbols so any hints
    would be appreciated.

    dwz currently doesn't handle compressed debug sections. There is some discussion, if dwz should decompress, do it's work and compress it again. However until then, don't use compressed debug sections. Apparently these are
    turned on by the upstream build system. debhelper maybe could warn about compressed debug sections in general. Would would you want to have those anyway?
    The packages are compressed, and you shouldn't care about the on-disk space
    when debugging.

    There's also discussion, about errors: https://sourceware.org/bugzilla/show_bug.cgi?id=24766
    Apparently the RPM based helpers ignore the return value of dwz, and leave the
    debug symbols unhandled. Again, debhelper could warn about such packages when
    built in compat12 mode.

    Now with golang-1.19, all Go packages ftbfs with

    dwz: Found compressed .debug_aranges section, not attempting dwz compression

    Could the debhelper ignore the dwz error? Or can a debhelper addon
    (e.g. dh-golang) be allowed to override dh_dwz globally?


    It turns out there is a `remove_command` API in debhelper, so
    dh-golang/1.58 now calls `remove_command('dh_dwz')`.

    --
    Shengjing Zhu

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)