Maneage - Bugs: bug #63242, binutils-2.39 failed build with...
You are not allowed to post comments on this tracker with your current authentication level.
bug #63242: binutils-2.39 failed build with gcc-6.2.0 because of gprofng (jvmti.h)
Submitter: | Boud Roukema <boud> | ||
Submitted: | Wed 19 Oct 2022 11:00:17 PM UTC | ||
Category: | Software | Severity: | 3 - Normal |
Item Group: | Crash | Status: | Works For Me |
Privacy: | Public | Assigned to: | None |
Open/Closed: | Open |
No files currently attached
Depends on the following items: None found
Items that depend on this one: None found
Carbon-Copy List
There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.
No changes have been made to this item
DESCRIPTION:
Using gcc-6.2.0 to build binutils-2.39 (current maneage 4318670) leads to a fatal error
This appears to be the result of trying to build 'gprofng' ("gnu profiler next generation"), which is in the current version (2.39) of the basic level package 'binutils', because building gprofng depends on a java header file 'jvmti.h'.
ANALYSIS:
Newer gcc versions apparently find some way of building gprofng without needing this external java dependence. This is not a solution to the bug, because we don't want people with an older host gcc version, such as 6.2.0, to have to downgrade binutils.
PROPOSED FIX:
Based on our reproducibility criteria, favouring builds that work on both newer and older host systems is a higher priority than enabling fashionable new tools, especially at the stage of building 'basic' tools. Moreover, even if some fields of research might use java as a high-level language, profiling the code does not need to be done within maneage itself.
So the fix proposed here is to disabled the build of 'gprofng' in the build rule for 'binutils' in 'basic.mk', i.e. by adding '--enable-gprofng=no' to the build rule. This is implemented in commit c0e30c1 [1].
Users knowing how to do profiling will have the skills to override this build rule.
[1] https://codeberg.org/boud/maneage_dev/commit/c0e30c18accec36737532080223031ed4f76619d