Re: Fortran Patches for gcc 5.3.0
David Gressett <[email protected]> Tue, 30 May 2017 23:58:42 +0000
| Newsgroups | gmane.comp.gnu.mingw.devel |
|---|---|
| Message-ID | <CY1PR13MB06304382A83EAEDC4F937F53D4F00@CY1PR13MB0630.namprd13.prod.outlook.com> |
On Tuesday, May 30, 2017 3:41 PM, Keith Marshall wrote >On 30/05/17 21:06, David Gressett wrote: >>> cp: cannot stat =91rts/standard.ads.h=92: No such file or directory >>> >>> which may be (potentially) more disturbing. >> >> I do not have that. >> >> Does your build tree contain gnatdll.exe? >Yes, as gcc/gnatdll.exe >> If it does exist, does your install log show an attempt to install >> it? >A successful attempt; it appears at $prefix/bin/gnatdll.exe. It is also >installed (incorrectly) into my cross-compiler tree, as gnatdll, whereas >it should be installed as mingw32-gnatdll. It installs for me as gnatdll.exe >> In my install-strip log, a set of twelve gnat tools (gnatbind, gnatchop, >> gnat, etc are installed in a loop; >These are also installed, for me, and (correctly) named with the host >prefix, in the cross-compiler tree ... I get the same thing , with the host prefixes, which are incorrect for a = native build; I fix them manually after the build completes. There are = several executables that get a host prefix from another source, and so get a double dose; for example, i get mingw32-mingw32-gcc.exe, which I rename to mingw32-gcc.exe. The configure system seems to have a problem getting the differences between a native and cross build exactly right. I see other signs of this when I build gcc with gmp, mpfr, and mpc in-tree; I get warnings in my compile log that I am using cross tools not prefixed with the host triplet and that the none host is obsolete. This does not happen when I build the gmp, mpfr, and mpc DLLs as standalone builds. I get compilers that work, however, even with the GCC-7.1.0 builds. >> a few lines down, I see gnatdll.exe installed separately. >... and it is presumably in that separate installation, that the host >prefix is omitted, in the cross-compiler installation. ... and is also omitted for me in my native installation. It looks as if in both cross and native builds, the set of twelve get the prefix and the single gnatdll does not, with different = consequences for the Ada DLLs. This leads me to believe that your failure to get the Ada DLLs is the result of the cross build system looking for mingw32-gnatdll and not finding it in the compile part of the build, but my native build looks for gnatdll and finds it. My guess: Those parts of the GCC compiler collection that are used in the middle of the compile process are built early on with the prefix because the cross build needs to use them. gnatdll is handled separately, and incorrectly at one crucial point. = The same screwup happens in the native build and accidentally works. ... snip ... ---------------------------------------------------------------------------= --- Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot