소스에서 Make를 설치하는 방법은 무엇입니까?

소스에서 Make를 설치하는 방법은 무엇입니까?

Ubuntu 18.x, RHEL 8.x 및 SUSE 15.x 서버에서 Make 버전 4.2 및 4.3을 사용해 보았습니다. 그러나 나는 같은 문제에 직면했습니다. 바이너리 패키지(예: yum, apt 또는 zypper 명령)를 사용할 수 없습니다.

다음 명령을 실행해 보았지만(4.3을 교체하고 4.2로도 교체했습니다) 실패했습니다.

curl http://ftp.gnu.org/gnu/make/make-4.3.tar.gz > /tmp/make-4.3.tar.gz
sudo cp /tmp/make-4.3.tar.gz /usr/bin/
sudo cd /usr/bin
sudo tar -zxvf make-4.3.tar.gz
cd make-4.3
sudo ./configure
sudo sh build.sh
sudo ./make install

나는 이것을 본다:

make[3]: '/usr/bin/make-4.3/lib' 디렉토리에서 나가기 make[2]: '/usr/bin/make-4.3/lib' 디렉토리에서 나가기 make[1]: '/ 디렉토리에서 나가기 usr/bin' /make-4.3/lib' po make[1]에 설치: '/usr/bin/make-4.3/po' 디렉토리를 입력합니다 make[1]:* 대상이 "설치"된다는 규칙은 없습니다. 멈추다. make[1]: '/usr/bin/make-4.3/po' 디렉토리를 종료합니다. make: *[Makefile:1442: install-recursive] 오류 1

내가 뭘 잘못했나요?

답변1

소스에서 GNU 패키지를 빌드하는 단계는 다음과 같습니다.

./configure --prefix=/usr/local  # Or your preferred place
make
make install

스크립트 configure는 다양한 관련 세부 정보(컴파일러 버전, 다양한 언어 기능의 가용성, 다양한 라이브러리, 다른 이름을 가진 함수...)에 대해 환경을 쿼리하고 필요한 구성을 반영하는 결과로부터 일부 헤더 파일을 생성합니다. 또한 Makefile.runs make자체를 빌드합니다.~ 할 것이다실행할 때까지 실패하므로 configure아무것도 없으므로 대상도 Makefile없습니다 install.

특정 버전을 원하시나요 make? 상당히 안정적인 패키지입니다.발표혁명적인 변화는 보이지 않습니다.

관련 정보