Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adoptium DevKit is not reproducible with a 3rd party built DevKit due to library dynsym order differences #1008

Closed
andrew-m-leonard opened this issue Apr 15, 2024 · 2 comments · Fixed by #1014

Comments

@andrew-m-leonard
Copy link
Contributor

The current Adoptium DevKit when compared to an equivalent externally built DevKit produces non-identical libraries, differing due to the ordering of the .dynsym section.
The cause has been tracked down to the Adoptium DevKit bootstrapping the build of binutils using gcc 4.8.5, compared to a later gcc 8.5 or 11.2 used in the 3rd party comparison test.

We need to "bootstrap" the DevKit make, to build itself as a "bootstrap-devkit" with the supplied gcc, then build the "final" DevKit using the "bootstrap-devkit".

@sxa
Copy link
Member

sxa commented Apr 15, 2024

At this point we should consider using a later OS for generating the devkit and running the builds. RHEL8/C8S come with GCC 8.5 out of the box which would remove the need for such a bootstrap.. Given how the devkit works, building on a later OS should not impact our compatibility with RHEL7/CentOS7 systems.

@andrew-m-leonard
Copy link
Contributor Author

andrew-m-leonard commented Apr 15, 2024

At this point we should consider using a later OS for generating the devkit and running the builds. RHEL8/C8S come with GCC 8.5 out of the box which would remove the need for such a bootstrap.. Given how the devkit works, building on a later OS should not impact our compatibility with RHEL7/CentOS7 systems.

Yes agree, if we can do that we would actually be consistent with other Vendors who work on the same major versions.

I would still recommend the bootstrap however, as we cannot forsee other such gcc behavioural changes, and it is a straight forward change.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
No open projects
Status: Done
2 participants