On Wed, Jun 24, 2020 at 01:09:48PM +0800, Humanities Clinic wrote: > version.c:27:10: fatal error: 'version.h' file not found
> jobs.c:72:10: fatal error: 'builtins/builtext.h' file not found > I double-checked the original folder in > http://ftp.gnu.org/gnu/bash/bash-3.2.57.tar.gz. It's true these files are > missing. > > May I know why is this so, and how this can be rectified? These files are generated during the build process. Did you run "./configure" (or some equivalent) before running "make"? Were there any errors during the configure stage? Were there any earlier errors during the make stage? The version.h file in a bash-3.2 build tree should look something like this: /* Version control for the shell. This file gets changed when you say `make version.h' to the Makefile. It is created by mkversion. */ /* The distribution version number of this shell. */ #define DISTVERSION "3.2" /* The last built version of this shell. */ #define BUILDVERSION 1 /* The release status of this shell. */ #define RELSTATUS "release" /* A version string for use by sccs and the what command. */ #define SCCSVERSION "@(#)Bash version 3.2.0(1) release GNU" During the make stage of the build, you should have seen something like this: /bin/sh ./support/mkversion.sh -b -S . -s release -d 3.2 -o newversion.h \ && mv newversion.h version.h If that step didn't occur, or if there was an error during it, then that would explain why your version.h file wasn't generated.