I installed gcc version 4.3.0 20070609 but did NOT put it on my path. I typed: "export CC=/usr/test/bin/gcc" to use the install but off path gcc.
I compiled gcc version 4.3.0 20070613 and everything was fine until here: /usr/test/bin/gcc -c -g -fkeep-inline-functions -gnatpg -gnata -nostdinc -I- -I. -Iada -I/root/downloads/gcc-4_3-trunk/gcc/ada /root/downloads/gcc-4_3-trunk/gcc/ada/back_end.adb -o ada/back_end.o /usr/test/bin/gcc -c -g -fkeep-inline-functions -gnatpg -gnata -nostdinc -I- -I. -Iada -I/root/downloads/gcc-4_3-trunk/gcc/ada /root/downloads/gcc-4_3-trunk/gcc/ada/gnat1drv.adb -o ada/gnat1drv.o gnatbind -C -nostdinc -I- -I. -Iada -I/root/downloads/gcc-4_3-trunk/gcc/ada -o ada/b_gnat1.c -n ada/gnat1drv.ali fatal error: file gnat1drv.ali is incorrectly formatted make sure you are using consistent versions of gcc/gnatbind 12. R nnnnnnnvnnnnnnnvvnvnnnnvnnnnnnnnnnnnnvnvnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn | make[3]: *** [ada/b_gnat1.c] Error 4 make[3]: Leaving directory `/opt/gcc-4_3-build-libcrlibm/gcc' make[2]: *** [all-stage1-gcc] Error 2 make[2]: Leaving directory `/opt/gcc-4_3-build-libcrlibm' make[1]: *** [stage1-bubble] Error 2 make[1]: Leaving directory `/opt/gcc-4_3-build-libcrlibm' make: *** [all] Error 2 # head -1 /opt/gcc-4_3-build-libcrlibm/gcc/ada/gnat1drv.ali V "GNAT Lib v4.3" # gnatbind -v | head -2 GNATBIND 4.2.0 20070501 (prerelease) My complaint is this: 1): Since I am using "/usr/test/bin/gcc" why can't gcc simply call "/usr/test/bin/gnatbind" instead of "gnatbind" (that searches the OS path). 2): The main configure script _does_ seem to look at environment variables for GNATBIND and GNATMAKE but typing "configure --help" does not show this feature - though "--help" mentions near every other environment variable supported. 3): You can't simply toss a "GNATBIND=/usr/test/bin/gnatbind" line at the top of the offending Makefile when the build break as shown above. If anyone else gets stuck like this you can put your un-pathed gcc 4.3.0 directory at the head of an "export PATH=..." statement (making it pathed) and then type "make". Ada will now build successfully - since the 'un-pathed' gnatbind is fetched from the first path in your "export PATH=..." statement. Gcc should use it's own path (argv[0]) and any "-B"'s to look for any drivers it calls (cc1, f77, pascal, gnat etc.). Surely it is wrong to call gnatbind "bare-pathed". What if your PATH environment was "PATH=/dir1:/dir2:/dir3" and you wanted to use /dir3/bin/gcc-3.4 to compile an Ada file - would you rather hope to find something in /dir3/bin instead of looking in /dir1 and then /dir2 first for gnatbind ? Which leavs another issue. If we use "/dir3/bin/gcc-3.4" would we want to use "/dir3/bin/gnatbind-3.4" prior to looking for "/dir3/bin/gnatbind". -- Summary: Ada gnatbind should utilize gcc's path and also check "- B" path Product: gcc Version: 4.3.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: ada AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: rob1weld at aol dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32333