-
Notifications
You must be signed in to change notification settings - Fork 3k
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
Add gcc-8 #103
Comments
FWIW, gcc-8 (and g++-8 and gfortran-8) are my preferred toolchains as well. On 16.04 (and possibly 18.04) you may need to add the |
@pefoo @zbeekman #104 mentions gcc 9 as preferred and looks like that's available in all package managers. Would that be good enough or you definitely need gcc 8? Due to maintenance and space concerns we sometimes can't get it all installed (though we wish we could), but your input can help us figure it out. |
@alepauly Since gcc-9 should support everything gcc-8 does, I am fine with gcc-9. |
@alepauly my only concern (which I voiced in #202) is that the GCC devs have a much lower bar for accepting patches etc in GFortran than they do for gcc and g++, so often the latest release of GCC can have serious regressions or new bugs in the gfortran compiler. I also wonder about windows. Are you going to move to MSYS2? (#30) Can you get GCC 9 with mingw? My recommendation is to install GCC 8 (with at least gcc, g++ and gfortran) everywhere. Since homebrew is a rolling release package manager you should probably also install the latest stable gcc on macOS, otherwise some packages (especially those with fortran dependencies, direct or indirect) will need to also install gcc in addition to the package requested by the user itself. You can always |
MSYS2 is using gcc 9.2.0. |
thanks @zbeekman - We'll work on untangling this since we also want to include WSL in Windows and that goes along with the work of switching to MSYS2 (from MinGW) which I think makes sense. With that in hand we'll get Linux and Mac figured out so there's consistent cross-platform support. I'll write something up once we figure it out in the next few days and I'll post it for feedback. |
Great! Here is my suggested approach: macOS
This gets you One complication with Homebrew is that other formulas may depend on gcc, especially Fortran related stuff (even MPICH, OpenMPI, etc.) so that can trip people up a little bit if UbuntuCan you please make sure you install packages that match the compilers provided by Homebrew (for consistency) and also gcov? Something like:
WindowsI have no idea, but please don't forget about Thanks! |
P.S. If you want to steer folks towards only GCC8, I would recommend |
@zbeekman Should we think about I am using the following snippet to get a working lcov installation that is compatible to gcc-8 toolchain (contains lcov 1.14 download + installation as well as fixing used gcov version):
|
@pefoo I rarely use lcov since I most often use codecov.io for coverage analysis. But if you want it I would submit a new issue if I were you. FYI, I think you want to use
|
Re MSYS2, using pacman, the current gcc is 9.2.0. There is discussion about adding a MSYS2 install to the Windows image(s). One can pre-install just
Would you prefer than |
Good day! |
@MSP-Greg can you please elaborate on what |
@ivan-nosar Any word on macOS? |
Sorry. |
@MSP-Greg Thanks for clarifying. I'm not a big Aur or MSYS/Windows user so not super familiar with pacman. So to clarify,
Yes, I don't know if you need GCC Objective C or Ada, (I don't use either personally... not yet at least) but I definitely need Hopefully through msys there's a straight forwards way to get the GCC 8.x tooling too, (for consistency with Linux/macOS) but, so long as GCC 8 tooling is a relatively snappy install, I'll be fine with gcc/g++/gfortran 9.2 on Windows. |
JFYI: MSYS is rather old and has really been replaced by MSYS2. One main difference is MSYS2 added pacman. Because of pacman, 'there is only one', and downgrading to GCC 8 requires knowing where to download the older files from. The main reason I've asked is that other Windows CI systems have MSYS2 installs with a lot more packages that 'standard shell and compile tools'. I'm trying to help determine what is reasonable... |
@MSP-Greg yeah, sorry I meant MSYS2 not MSYS. I guess that makes sense: if Pac-Man is what Aur uses then it’s a rolling release type manager like homebrew. If the only good/easy solution on Windows is GCC 9 I’m good with that. It will match Homebrew more closely and I’d rather be forced into a GFortran that’s newer than I want instead of older. That means fixes should come around faster even if there is higher exposure to regressions. |
Hello, All We have added gcc8 for Ubuntu 18.04 in #369. It should start rolling out early next week, once the rollout start it shows up as a pre-release here: https://github.com/actions/virtual-environments/releases After that it takes about 6-7 days to reach all accounts (assuming no delays) |
@pefoo the image has been rolled out. Could you check gcc, please? |
- removed installation of compiler (see actions/runner-images#103) - switched to a less hacky way to set the gcov version
@miketimofeev Removed the compiler installation and checked the build. Looks great! Thank you. |
Tool information
Virtual environments affected
Can this tool be installed during the build?
Yes
However, this fails at the moment because of broken packages. (which is not the reason for this request)
Are you willing to submit a PR?
Sure. Just need a bit help to get started.
The text was updated successfully, but these errors were encountered: