Build fails with binutils-2.47
- Dominant language
- C
- Stars
- 3.4k
- Forks
- 539
- PR merge metrics
- No merged PRs in 30d
Description
`linux/bfd.c` compares against `TRUE`, but that is not defined anymore with binutils 2.47. The following error is shown on compilation (`make`):
```
linux/bfd.c: In function ‘arch_bfdResolveSyms’:
linux/bfd.c:170:94: error: ‘TRUE’ undeclared (first use in this function)
170 | bfdParams.bfdh, section, bfdParams.syms, sec_offset, &file, &func, &line) == TRUE) {
| ^~~~
linux/bfd.c:170:94: note: each undeclared identifier is reported only once for each function it appears in
```
Perhaps [this](https://github.com/google/honggfuzz/blame/master/linux/bfd.c#L170) (and [that](https://github.com/google/honggfuzz/blame/master/linux/bfd.c#L176)) comparison can be removed like in https://github.com/google/honggfuzz/commit/6d07ac100852cf8148c324d78516341ea8a088b9. At least it fixes the build for me locally (Arch Linux 7.1.8-arch1-3 with binutils 2.47-4).
Contributor guide
Research direction
Start in linux/bfd.c at the comparisons around lines 170 and 176, then review commit 6d07ac100852cf8148c324d78516341ea8a088b9 for context. Run make with binutils 2.47; done means the project builds without the TRUE undeclared error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- build-system
- Issue type
- Bug
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Activity status
- Quiet
- Clarity
- Clearly specified
- Newbie friendliness
- 85/100