
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
. make
스스로 달리는 중~ 할 것이다실패하면 실행할 때까지 configure
가 없으므로 대상 Makefile
도 없습니다 install
.
왜의 특정 버전을 원하시나요 make
? 그것은 매우 안정적인 패키지입니다.발표혁명적인 변화를 보여주지는 않습니다.