Go to the first, previous, next, last section, table of contents.


Missing tools?

A build of gcc might fail due to one or more tools being called upon by make (during the build or install process), when those tools are not installed on your system.

This situation can result from any of the following actions (performed by you or someone else):

The reason these activities cause make to try and invoke tools that it probably wouldn't when building from a perfectly "clean" source directory containing gcc and g77 is that some files in the source directory (and the corresponding distribution) aren't really source files, but derived files that are produced by running tools with the corresponding source files as input. These derived files depend, in make terminology, on the corresponding source files.

make determines that a file that depends on another needs to be updated if the date-time-modified information for the source file shows that it is newer than the corresponding information for the derived file.

If it makes that determination, make runs the appropriate commands (specified in the "Makefile") to update the derived file, and this process typically calls upon one or more installed tools to do the work.

The "safest" approach to dealing with this situation is to recreate the gcc and g77 source directories from complete gcc and g77 distributions known to be provided by the FSF.

Another fairly "safe" approach is to simply install the tools you need to complete the build process. This is especially appropriate if you've changed the source code or applied a patch to do so.

However, if you're certain that the problem is limited entirely to incorrect date-time-modified information, that there are no discrepancies between the contents of source files and files derived from them in the source directory, you can often update the date-time-modified information for the derived files to work around the problem of not having the appropriate tools installed.

On UNIX systems, the simplest way to update the date-time-modified information of a file is to use the use the `touch' command.

How to use `touch' to update the derived files updated by each of the tools is described below. Note: New versions of g77 might change the set of files it generates by invoking each of these tools. If you cannot figure out for yourself how to handle such a situation, try an older version of g77 until you find someone who can (or until you obtain and install the relevant tools).


Go to the first, previous, next, last section, table of contents.