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

Make gcc 7.5.0 available on arm32 machines #487

Closed
sxa opened this issue Sep 10, 2018 · 6 comments
Closed

Make gcc 7.5.0 available on arm32 machines #487

sxa opened this issue Sep 10, 2018 · 6 comments

Comments

@sxa
Copy link
Member

sxa commented Sep 10, 2018

Currently fails to build as it can't find sys/cdefs.h on the arm32 distributions (on raspbian or Ubuntu). Possibly expecting it to be in the location it's supplied in on the RHEL machines. I had a first attempt at overriding it with the configure parameters but that didn't succeed. Breaking this out to a separate work item so it doesn't impact closing issues related to the ansible scripts on Milestone A

@sxa sxa added this to the Backlog milestone Mar 7, 2019
@sxa sxa modified the milestones: Backlog, April 2020 Mar 24, 2020
@sxa sxa changed the title Make gcc 7.3.0 available on arm32 machines Make gcc 7.5.0 available on arm32 machines Mar 24, 2020
@sxa
Copy link
Member Author

sxa commented Mar 24, 2020

Probably worth trying this with the new 7.5.0 release on Linux/arm32 (armv7l)

@Haroon-Khel
Copy link
Contributor

Haroon-Khel commented Mar 25, 2020

As anticipated, the sys/cdefs.h error occurs. Will investigate

/usr/include/features.h:367:12: fatal error: sys/cdefs.h: No such file or directory

@sxa
Copy link
Member Author

sxa commented Mar 25, 2020

Can you try adding --includedir=/usr/include/arm-linux-gnueabihf to the ./configure parameters: https://github.com/AdoptOpenJDK/openjdk-infrastructure/issues/438#issuecomment-414434025`

@Haroon-Khel
Copy link
Contributor

Haroon-Khel commented Mar 30, 2020

@sxa555 That didn't work either. I tried something similar by including that directory using

export CFLAGS=-I/usr/include/arm-linux-gnueabihf
export CXXFLAGS=-I/usr/include/arm-linux-gnueabihf 

but this gave the following error
/usr/include/arm-linux-gnueabihf/gnu/stubs.h:7:11: fatal error: gnu/stubs-soft.h: No such file or directory Different to the original error, but not helpful.

Another proposed solution is to install the package g++-multilib, though I cannot find this in the apt repositories

@sxa
Copy link
Member Author

sxa commented Jun 20, 2020

-mfloat-hard on configure resolves the above issue and is the default that we use so should be ok. I've built it on the Ubuntu machines and I'll get it deployed onto the build machines and trigger runs with it so to verify it's safe to use in the nightlies for Sunday evening

For complete reference my configure line with gcc 7.5.0 was:

./configure --prefix=/usr/local/gcc --program-suffix=-7.5 --with-float=hard

@sxa
Copy link
Member Author

sxa commented Jul 15, 2020

Thought I'd closed this. Deployed and working and also enabled for JDK in adoptium/temurin-build#1968 to fix support issue 33

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants