Qt 6.2.2 and MinGW 9.0.0 does not deliver a Fortran Compiler
-
@kshegunov said in Qt 6.2.2 and MinGW 9.0.0 does not deliver a Fortran Compiler:
@FreddoFrog said in Qt 6.2.2 and MinGW 9.0.0 does not deliver a Fortran Compiler:
I am alarmed that there is no longer a Fortran Compiler supplied with Qt 6.2.2 and its move to MinGW 9.0.0.
Why would Qt deliver you a fortran compiler to begin with? ...
My second post I think that covers what you are requesting :-) Summarising again, there is a huge number of "Amateurs" that work with and compile their own software in this 30,000-odd continuous (WORLD LEADING) software user base.
As for deploying MinGW or MSYS the environments with the Software Develoeprs' KIts that are available for WSJT-X and JT-ware are complex enough as it is when one speaks with the maintainers of these kits. Version mismatches - library mismatches - DLL's not being able to be found etc.
It is so much easier working off the one codebase (and version) of development tools - especially for Amateurs and Open Source Contributors who are not performing activities for money.
Traditionally a Fortran compiler has been supplied up until this release.
I reiterate that the intent of the post was start a disussion to draw out a continued need for such resources. Reporting such as a bug etc. wastes everyones time without evidence.
These people that use this are Amateurs; most do do not trawl forums picking this comma or that word. They are learners. KISS. Keep it Simple.
Work the story - determine the need.
Its a frustrating discussion and having a seond post throw "Terms Of Service" at you - a "Term Of Service" that is very liberal. The concerns there at that post has been addressed. I am sure that posts already have hit moderators (I have reported them too).
The intent here was to inform and determine if need was there then post "in the appropriate place". Evidence based reporting.
This is so much better than firing potshots in the dark without sustaining need :-)
That is how you keep within "Terms Of Service".
-
@FreddoFrog said in Qt 6.2.2 and MinGW 9.0.0 does not deliver a Fortran Compiler:
My second post I think that covers what you are requesting :-) Summarising again, there is a huge number of "Amateurs" that work with and compile their own software in this 30,000-odd continuous (WORLD LEADING) software user base.
So? When I work with OpenMPI I don't expect Qt to supply me neither the wrapper compilers, nor should I. Qt is a library, not your download all in one compiler/toolchain package.
As for deploying MinGW or MSYS the environments with the Software Develoeprs' KIts that are available for WSJT-X and JT-ware are complex enough as it is when one speaks with the maintainers of these kits. Version mismatches - library mismatches - DLL's not being able to be found etc.
How is this a problem of Qt, or QtCreator for that matter? Shall we suddenly require Microsoft to supply fortran in their windows SDK, or perhaps we should require intel to ship you a D compiler alogside their fortran package, just 'cause someone may decide to use it?
(... and please don't answer these)It is so much easier working off the one codebase (and version) of development tools - especially for Amateurs and Open Source Contributors who are not performing activities for money.
Fortran uses C-linkage, so anything compiled with fortran can be linked by anything C.
So, what's the problem here? Just setup your tools properly and hack away.Traditionally a Fortran compiler has been supplied up until this release.
No it hasn't. No one promised you that. You've been depending on a detail that's completely undocumented and now you've been bit. It happens, but you're going to have to live with it.
I reiterate that the intent of the post was start a disussion to draw out a continued need for such resources. Reporting such as a bug etc. wastes everyones time without evidence.
Then the intent is wrong, as the whole premise is wrong. Nobody told you that they're going to ship you a fortran compiler, it was never documented nor is it required for the Qt libraries. So, I reiterate - download your own compiler and setup the IDE to use it, that's how it's done.
I don't go around crying that Qt Creator doesn't ship me the MSVC console compiler and debugger, do I?These people that use this are Amateurs; most do do not trawl forums picking this comma or that word. They are learners. KISS. Keep it Simple.
You throw this in like it matters. Keep simple what? It's already simple enough. There's documentation for you to read on how to setup the IDE, you follow the steps and if you fail to properly set it up, then you can come and ask a question. That's fine.
Whining that some obscure undocumented thing isn't available anymore on the other hand, sorry, you ain't impressing nobody.Work the story - determine the need.
I don't need it, nor does anyone that actually develops with Qt. So there's no need.
That is how you keep within "Terms Of Service".
What are you babbling about? No one mentioned no "Terms of service" anywhere.
-
Qt 6.2.2 comes with MinGW 11.2.0 release that I've build at https://github.com/cristianadam/mingw-builds/releases/tag/v11.2.0-rev1
Unfortunately Qt Release Team named the MinGW release 9.0.0 instead of 11.2.0. I reported the problem at https://bugreports.qt.io/browse/QTBUG-99262I did the release because "niXman" stopped doing binary releases at https://sourceforge.net/projects/mingw-w64/files/.
Fortunately he posted the scripts on GitHub At https://github.com/niXman/mingw-builds, and in order to create a MinGW toolchain one just has to run a bash command in a MSys2 shell window:
./build --mode=gcc-11.2.0 --buildroot=buildroot --jobs=4 --rev=0 --rt-version=trunk --threads=win32 --exceptions=seh --arch=x86_64 --bin-compress --enable-languages=c,c++
I haven't noticed that previously the release had also fortran as an enabled language.
You can fork https://github.com/niXman/mingw-builds change the https://github.com/niXman/mingw-builds/blob/develop/.github/workflows/build_cmake.yml file to contain fortran and push. In ~5hours you'll have your own MinGW toolchains.
'niXman' has started creating binary packages at https://github.com/niXman/mingw-builds-binaries
and we'll just refer to those packages, and not my fork.Please create a bug report at https://github.com/niXman/mingw-builds-binaries/issues and at https://bugreports.qt.io/ so that this is properly tracked.
-
@Crisian-Adam-0 said in Qt 6.2.2 and MinGW 9.0.0 does not deliver a Fortran Compiler:
and at https://bugreports.qt.io/ so that this is properly tracked.
So, you're promising that you're going to ship a fortran compiler alongside the Qt's builds; the MinGW package that you ship?
If that is so, then @FreddoFrog, my apologies for snapping at you, apparently I was wrong.
-
@kshegunov said in Qt 6.2.2 and MinGW 9.0.0 does not deliver a Fortran Compiler:
So, you're promising that you're going to ship a fortran compiler alongside the Qt's builds; the MinGW package that you ship?
I have a run at https://github.com/cristianadam/mingw-builds/runs/4845292779?check_suite_focus=true
If this passes I'll make a tag release and inform the Qt Release team about it.
I didn't pay attention to which languages MinGW 8.1.0 had enabled and thought that c and c++ are enough for Qt 😁
-
@Crisian-Adam-0 said in Qt 6.2.2 and MinGW 9.0.0 does not deliver a Fortran Compiler:
I have a run at https://github.com/cristianadam/mingw-builds/runs/4845292779?check_suite_focus=true
If this passes I'll make a tag release and inform the Qt Release team about it.
That's nice, but it didn't really answer my question.
I didn't pay attention to which languages MinGW 8.1.0 had enabled and thought that c and c++ are enough for Qt 😁
Yeah, my understanding as well, notwithstanding the limited to no utility of fortran for any Qt code or vice versa. Simply linking the different binaries should be more than satisfactory, I should think.
-
@Crisian-Adam-0 I was not going to comment further - but as the discussion is mostly constructive so further comment is ethically warranted.
No I am not promising to do it - but I can tell you how to possibly do it - In a way that many would consider to be BAD ... see below.
This discussion is about building a case to have an APPROVED deployment for Fortran shipped with Qt deployments.
As a community we need to gauge whether an escallation is needed for an urgent approach to the Qt maintainers to incorporate Fortran compilers.
Many may not know that MinGW Tools deployment has been bumped to Version 9.0.0 from Version 8.1 (where it has been since QT 5.15.0) since the release of Qt 6.2.2.
Often these posts flag interests of Qt Maintainers and get faster action.
If an approach has to be made then once the evidence is there you have a greater chance of getting the request prioritised.
For general clarification for everyone:
-
Amateurs when used in this in this context refers to "Amateur Radio Operators".
-
You can "drop" packages in from "approved resources" at the moment into the Qt Tools directory (i.e. (deploy)\Qt\Tools\mingw900_64) .
* Ref: https://mirror.msys2.org/mingw/mingw64/mingw-w64-x86_64-gcc-fortran-11.2.0-6-any.pkg.tar.zst .<== Further testing: fails - hence need for this to come from Qt MaintainersDespite this being a recognised source, dropping in compiled code into an existing deployment is quite dangerous as it has NOT come from Qt nor has it been approved or tested by The Qt Environment Development Team. It has not even been fully tested here.
It is FAR FAR better that these resources come FROM Qt Maintainers and be deployable from resources such as the Qt MaintenanceTool, Installer and/or some additional maintenance tool for MinGW.
I have been open in my thinking and motives here. If one is not open and honest then one gets chopped to pieces.
Further constructive comments and discussion are always appreciated.
-
-
Just so that people are aware ....
MSYS2 Project MinGW reports as :
$ gfortran --version
GNU Fortran (Rev6, Built by MSYS2 project) 11.2.0
Copyright (C) 2021 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.Qt's C++ Compiler reports as:
PS C:\Qt\Tools\mingw900_64\bin> gcc --version
gcc.exe (x86_64-posix-seh-rev0, Built by MinGW-W64 project) 8.1.0
Copyright (C) 2018 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.Without dumping a hell of a lot of DLL's etc. at both the MSYS2 and Qt MinGW 9.0.0 ends there is a lack of compatibility - hence build failures when you just drop the MSYS2 compatible "pacman package" in - which is why I had to strike-through the line:
*You can "drop" packages in from "approved resources" at the moment into the Qt Tools directory (i.e. (deploy)\Qt\Tools\mingw900_64) .
-
@FreddoFrog thank you for creating https://bugreports.qt.io/browse/QTBUG-99968
I've published an update of MinGW 11.2.0 with
fortran
support at https://github.com/cristianadam/mingw-builds/releases/tag/v11.2.0-rev2Qt packages the
x86_64-11.2.0-release-posix-seh
binary in the Qt SDK. So you can test with the x86_64-11.2.0-release-posix-seh-rt_v9-rev2.7z binary. -
@Crisian-Adam-0 This is HUGELY APPRECIATED by our community.
I have not tested this yet but I sure will !!!
I do not like cross-posting but I will copy-and-paste your notes into our community.
Our Announcement: https://groups.io/g/JTSDK/message/1884
Thanks again. I cannot put a solved to this until this is formally addressed by the Qt Maintainers.