openwrt / openwrt/packages

dnsdist: failed to build due to missing boost headers

Open
#27,871 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
Makefile
Stars
4.6k
Forks
4k
Avg merge
3d 12h
Merged PRs (30d)
134

Description

Package Name

dnsdist

Maintainer

@Habbie

OpenWrt Version

SNAPSHOT

OpenWrt Target/Subtarget

bcm27xx/bcm2711

Steps to Reproduce

dnsdist fails to build on my machine due to missing boost headers:

checking whether strerror_r returns char *... yes
checking for Boost headers version >= 1.54.0... no
configure: error: cannot find Boost headers version >= 1.54.0
make[2]: *** [Makefile:173: /home/cschuette/openwrt/bcm2711-snapshot/openwrt/build_dir/target-aarch64_cortex-a72_glibc/dnsdist-full/dnsdist-2.0.1/.configured_6ba82834d267f734edb119af3ee1e292] Error 1
make[2]: Leaving directory '/home/cschuette/openwrt/bcm2711-snapshot/openwrt/feeds/packages/net/dnsdist'
time: package/feeds/packages/dnsdist/full/compile#2.92#2.50#7.18
    ERROR: package/feeds/packages/dnsdist failed to build (build variant: full).
make[1]: *** [package/Makefile:193: package/feeds/packages/dnsdist/compile] Error 1
make[1]: Leaving directory '/home/cschuette/openwrt/bcm2711-snapshot/openwrt'
make: *** [/home/cschuette/openwrt/bcm2711-snapshot/openwrt/include/toplevel.mk:233: package/feeds/packages/dnsdist/compile] Error 2

Installing latest libboost-dev to the build host solved this, but leads to a different error:

<command-line>: warning: '_FORTIFY_SOURCE' redefined
<command-line>: note: this is the location of the previous definition
In file included from misc.hh:32,
                 from iputils.hh:31,
                 from bpf-filter.hh:27,
                 from bpf-filter.cc:22:
dns.hh: In static member function 'static bool dnsheader_aligned::isMemoryAligned(const void*)':
dns.hh:217:12: error: cast from 'const void*' to 'uintptr_t' {aka 'unsigned int'} loses precision [-fpermissive]
  217 |     return reinterpret_cast<uintptr_t>(mem) % sizeof(uint32_t) == 0; // NOLINT(cppcoreguidelines-pro-type-reinterpret-cast)
      |            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[5]: *** [Makefile:1934: bpf-filter.o] Error 1

So, there seems to be something wrong with the dependencies.
@Habbie @rgacogne

Actual Behaviour

Build fails.

Confirmation Checklist

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Inspect feeds/packages/net/dnsdist and its Makefile, starting with the package dependency declarations and configure invocation. Reproduce the full dnsdist build for bcm27xx/bcm2711 and compare the Boost-header failure with the later C++ compilation error. Done means the full variant builds without either reported failure.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
build-system
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.