Linux, 소스에서 프로그램 컴파일을 자동화하려면 if, else 또는 문이 필요합니까?

Linux, 소스에서 프로그램 컴파일을 자동화하려면 if, else 또는 문이 필요합니까?

소스에서 패키지를 설치하기 위해 bash 스크립트를 작성하는 가장 좋은 방법이 무엇인지 궁금합니다. 작업을 자동화하는 방법에 대해 자세히 설명해야 합니까?

예를 들어 아파치를 컴파일하고 싶다고 가정해 보겠습니다.

cd /path/httpd
./configure -arguments here -augment here -blah blah
make
make install

이 프로세스는 사람의 개입 없이 완전히 자동화됩니다. 위에 표시된 것처럼 단순히 인수를 전달하는 것이 좋을까요? 아니면 else 문 등을 사용하여 더 깊이 있어야 한다고 생각하십니까?

시간 내 주셔서 감사합니다.

답변1

전제 조건이 있다는 것을 미리 알고 있다면 이렇게 할 수 있습니다.

이것이 작동하는 방식입니다 PKGBUILD에스.

gitlab/github에서 CI-CD를 사용하여 컴파일이 성공했는지 테스트할 수 있습니다.

확실하지 않은 경우 몇 가지 조건을 추가해야 합니다.

trap 'echo >&2 "Encountered an error"; exit 1' ERR
cd /path/httpd
./configure -arguments here -augment here -blah blah
make
make install

또는

set -e
cd /path/httpd 
./configure -arguments here -augment here -blah blah
make
make install

또는 부울 논리를 사용하여:

cd /path/httpd && 
./configure -arguments here -augment here -blah blah &&
make &&
make install

다음 명령을 실행하려면 각 명령이 성공해야 합니다.

관련 정보