스크랩 오류의 Linux "이 중요한 프로그램이 없거나 너무 오래되었습니다: gawk"

스크랩 오류의 Linux "이 중요한 프로그램이 없거나 너무 오래되었습니다: gawk"

나는 "Linux from Scratch" 책의 버전 8.0을 따르고 있으며 섹션 (5.7.Glibc-2.25)에 도달했습니다. 구성하려고 할 때 glibc다음 오류가 발생합니다 .

다음 주요 프로그램이 없거나 너무 오래되었습니다: gawk

gawk터미널에 쓰면 다음과 같은 결과가 나타납니다 .

Command 'gawk' is available in '/usr/local/bin/gawk'
The command could not be located because '/usr/local/bin' is not included in the PATH environment variable.
gawk: command not found

이 책 앞부분 31페이지 4.5절에는 다음과 같이 나와 있습니다.

이제 .bashrc 파일을 만듭니다.

cat > ~/.bashrc << "EOF"
set +h
umask 022
LFS=/mnt/lfs
LC_ALL=POSIX
LFS_TGT=$(uname -m)-lfs-linux-gnu
PATH=/tools/bin:/bin:/usr/bin
export LFS LC_ALL LFS_TGT PATH
EOF

내가 해냈어.

고쳐 쓰다:

version-check.sh 스크립트 실행책의 섹션 2.2사용자 lfs가 제공한 대로:

bash, version 4.3.46(1)-release  
/bin/sh -> /bin/bash
Binutils: (GNU Binutils for Ubuntu) 2.27
version-check: line 10: bison: command not found
/usr/bin/yacc -> /usr/bin/bison
bzip2,  Version 1.0.6, 6-Sept-2010.
Coreutils:  8.25
diff (GNU diffutils) 3.3
find (GNU findutils) 4.7.0-git
version-check: line 22: gawk: command not found
/usr/bin/awk -> /usr/bin/gawk
gcc (Ubuntu 6.2.0-5ubuntu12) 6.2.0 20161005
g++ (Ubuntu 6.2.0-5ubuntu12) 6.2.0 20161005
(Ubuntu GLIBC 2.24-3ubuntu1) 2.24
grep (GNU grep) 2.25
gzip 1.6
Linux version 4.8.0-41-generic (buildd@lgw01-18) (gcc version 6.2.0 20161005 (Ubuntu 6.2.0-5ubuntu12) ) #44-Ubuntu SMP Fri Mar 3 15:27:17 UTC 2017
m4 (GNU M4) 1.4.17
GNU Make 4.1
GNU patch 2.7.5
Perl version='5.22.2';
sed (GNU sed) 4.2.2
tar (GNU tar) 1.29
version-check: line 42: makeinfo: command not found
xz (XZ Utils) 5.1.0alpha
g++ compilation OK

그러나 루트와 동일한 스크립트를 실행하면 다음이 제공됩니다.

bash, version 4.3.46(1)-release
/bin/sh -> /bin/bash
Binutils: (GNU Binutils for Ubuntu) 2.27
bison (GNU Bison) 2.3
/usr/bin/yacc -> /usr/bin/bison
bzip2,  Version 1.0.6, 6-Sept-2010.
Coreutils:  8.25
diff (GNU diffutils) 3.3
find (GNU findutils) 4.7.0-git
GNU Awk 4.0.1
/usr/bin/awk -> /usr/bin/gawk
gcc (Ubuntu 6.2.0-5ubuntu12) 6.2.0 20161005
g++ (Ubuntu 6.2.0-5ubuntu12) 6.2.0 20161005
(Ubuntu GLIBC 2.24-3ubuntu1) 2.24
grep (GNU grep) 2.25
gzip 1.6
Linux version 4.8.0-41-generic (buildd@lgw01-18) (gcc version 6.2.0 20161005 (Ubuntu 6.2.0-5ubuntu12) ) #44-Ubuntu SMP Fri Mar 3 15:27:17 UTC 2017
m4 (GNU M4) 1.4.17
GNU Make 4.1
GNU patch 2.7.5
Perl version='5.22.2';
sed (GNU sed) 4.2.2
tar (GNU tar) 1.29
texi2any (GNU texinfo) 6.3
xz (XZ Utils) 5.1.0alpha
g++ compilation OK

제 생각에는 /usr/local/binPATH 환경 변수에 포함되어 있지 않기 때문이라고 생각하는데, 책에서는 이를 추가하는 방법에 대해 아무 말도 하지 않습니다.

영어는 나의 모국어가 아닙니다.

답변1

이는 도구 체인 구축의 첫 번째 단계이므로 환경은 호스트 운영 체제에 크게 의존합니다.

장에서2.2 호스트 시스템 요구사항두 가지 스크립트가 있습니다:

  • version-check.sh- lfs에 중요한 모든 패키지의 인쇄 버전
  • library-check.sh- gmp, mpfr 및 mpc 라이브러리 확인

두 가지를 모두 실행하고 책에 제공된 버전과 비교하여 결과를 확인했습니까?

당신이 얻는 오류는 다음과 같습니다.

다음 주요 프로그램이 없거나 너무 오래되었습니다: gawk

그것은 간단합니다. 호스트 운영 체제가 너무 오래되었습니다 gawk.

편집: 업데이트해 주셔서 감사합니다. 따라서 gawk호스트 OS의 버전은 괜찮습니다. 그러나 문제는 여전히 호스트 OS입니다. 이상한 이유로 일부 패키지는 일반(lfs) 사용자가 액세스할 수 없으므로 호스트 OS가 시스템 요구 사항을 충족하지 않습니다. lfs 쪽에서는 수정할 부분이 없습니다. 호스트 OS를 복구해야 합니다. 어쩌면 이 패키지를 다시 설치해야 할까요?

관련 정보