-
Notifications
You must be signed in to change notification settings - Fork 772
{compiler}[dummy] GCC 8.1.0 + binutils 2.30 #6296
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
{compiler}[dummy] GCC 8.1.0 + binutils 2.30 #6296
Conversation
|
Test report by @boegel |
|
Test report by @boegel |
|
Test report by @boegel |
|
Test report by @verdurin |
|
Test report by @verdurin |
|
|
||
| homepage = 'http://gcc.gnu.org/' | ||
| description = """The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Java, and Ada, | ||
| as well as libraries for these languages (libstdc++, libgcj,...).""" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@boegel Is it worth adding a line in the description about the distinction between GCC and GCCcore, to make the distinction clearer? It's a question that keeps coming up...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmm, not sure if that'll make much difference...
I'm actually hoping we can get rid of the GCC vs GCCcore situation, we may have another way of dealing with this now, for example by using Bundle & components to perform a GCC installation that also includes binutils, but we need to check how this will impact sites using HMNS.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@boegel We have HMNS. What needs testing/checking?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Whether we can use GCC as a subtoolchain for both foss and intel (rather than GCCcore).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This won't work, the reason GCCcore exists is because it is not classed as a compiler in the hierarchy (i.e., it is not part of the compiler family), which allows it to be loaded at the same time as another compiler. It is there to provide a base for all the other compilers.
GCC is in the family so can't be loaded at the same time as another compiler. If we did not include it in the family we would not get the desired swapping behaviour. At JSC to avoid confusion we hide GCCcore.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Folling @ocaisa 's input I did a simple test on our machine
load GCC/6.4.0-2.28
load intel/2018a
I don't see any unloading. Checking on environment variables, the ones related to GCC, eg. EBVERSIONGCC=6.4.0 is still there after loading intel (it is not there when I only load the intel). A "which gcc" is still pointing at the correct version, so is "mpicc -v". "mpiicc -v" points to the right intel compiler.
So if I were to go along and build software against this outside EasyBuild this should just work. Most likely I am still to ignorant on the internal workings of EB. Could someone clue me where the "explosion" comes?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
By the way, should we move this discussion out of the GCC 8.1.0 pull request? I think it belongs somewhere else.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Agreed with @jhein32, I've opened an issue for this: #6366
Let's get this one merged @migueldiascosta?
|
Test report by @migueldiascosta |
|
@migueldiascosta Hmm, |
…recent GCC that supports -flto is required
| ('M4', '1.4.18'), | ||
| ('binutils', '2.30'), | ||
| # a sufficiently recent GCC is required (needs to support -flto), so can't rely on system GCC | ||
| ('GCCcore', '6.4.0'), |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@geimer Thoughts on this? The gcc includes with CentOS 6.x is apparently not recent enough to build GCC 8.1...
|
Test report by @boegel |
|
Test report by @boegel |
|
Test report by @migueldiascosta |
migueldiascosta
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lgtm
|
Going in, thanks @boegel! |
(created using
eb --new-pr)