DESTDIR 및 PREFIX of make
특정 디렉토리에 소프트웨어를 설치하려고합니다. 여러 가지 방법을 찾았지만 그 차이점이 무엇인지 잘 모르겠습니다.
./configure --prefix=***
make install DESTDIR=***
make install prefix=***
이 세 가지 기능에 대해 혼란 스럽습니다. 그들은 같은 목표를 달성합니까?
./configure --prefix=***
숫자 1 은 패키지가 설치 될 때 이동할 위치와 실행될 때 연관된 파일을 찾을 위치를 결정합니다. 단일 호스트에서 사용하기 위해 무언가를 컴파일하는 경우 사용해야합니다.
make install DESTDIR=***
2 번은 패키지가 실행될 곳이 아닌 임시 디렉토리에 설치하기위한 것입니다. 예를 들어 이것은 deb
패키지를 빌드 할 때 사용됩니다 . 패키지를 만드는 사람은 실제로 모든 것을 자신의 시스템의 최종 위치에 설치하지 않습니다. 이미 다른 버전이 설치되어있어 방해하고 싶지 않거나 루트가 아닐 수도 있습니다. 그래서 그는
./configure --prefix=/usr
따라서 프로그램이 /usr
실행될 때 설치 될 것으로 예상 됩니다.
make install DESTDIR=debian/tmp
실제로 디렉터리 구조를 만듭니다.
make install prefix=***
3 번은 다른 위치에 설치하지만 모든 디렉토리를 만들지는 않습니다 DESTDIR=/foo/bar/baz
. 일반적으로 GNU stow via
./configure --prefix=/usr/local && make && sudo make install prefix=/usr/local/stow/foo
, 바이너리를 /usr/local/stow/foo/bin
. 이에 비해
make install DESTDIR=/usr/local/stow/foo
바이너리를 /usr/local/stow/foo/usr/local/bin
.
이는 DESTDIR
및 --prefix
( 여기에서 ) 사용을 설명하는 데 도움이 될 수 있습니다 .
--prefix 및 DESTDIR을 사용한 다중 설치 :
구성시 각 빌드에 대해 다른-접두사 위치 / 옵션을 구분합니다. 예 :
untar petsc tar ball ./configure --prefix=/opt/petsc/petsc-3.9.0-mpich --with-mpi-dir=/opt/mpich make make install DESTDIR=/tmp/petsc-pkg untar petsc tar ball ./configure --prefix=/opt/petsc/petsc-3.9.0-openmpi --with-mpi-dir=/opt/openmpi make make install DESTDIR=/tmp/petsc-pkg
에서 openssl/INSTALL
표준 위치에 대해 라이브러리를 구성하고 싶지만 패키지를 쉽게 패키징 할 수 있도록 다른 곳에 패키지를 설치 한 패키지 빌더는 다음을 사용할 수 있습니다.
$ make INSTALL_PREFIX=/tmp/package-root install
(또는 구성 옵션으로 "--install_prefix = / tmp / package-root"지정). 지정된 접두사는 모든 설치 대상 파일 이름 앞에 추가됩니다.
이것은 비표준이지만 INSTALL_PREFIX는 다른 프로그램에서 사용됩니다.
이것은 1.1.x 이전의 OpenSSL 버전에서 작동합니다. OpenSSL 1.1.x 이상은 일반적인 DESTDIR
.
참고 URL : https://stackoverflow.com/questions/11307465/destdir-and-prefix-of-make
'Programing' 카테고리의 다른 글
정적 클래스 초기화는 언제 발생합니까? (0) | 2020.08.08 |
---|---|
이 코드가 64 비트 아키텍처에서는 segfault이지만 32 비트에서는 잘 작동하는 이유는 무엇입니까? (0) | 2020.08.08 |
일반 람다는 C ++ 14에서 어떻게 작동합니까? (0) | 2020.08.08 |
JavaScript 정적 분석 도구가 있습니까? (0) | 2020.08.08 |
표준 Scala 클래스를 사용하여 Scala에서 JSON을 구문 분석하는 방법은 무엇입니까? (0) | 2020.08.08 |