![빌드 스크립트: "이전에 완료된 단계 건너뛰기" 구현 방법](https://linux55.com/image/41873/%EB%B9%8C%EB%93%9C%20%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%3A%20%22%EC%9D%B4%EC%A0%84%EC%97%90%20%EC%99%84%EB%A3%8C%EB%90%9C%20%EB%8B%A8%EA%B3%84%20%EA%B1%B4%EB%84%88%EB%9B%B0%EA%B8%B0%22%20%EA%B5%AC%ED%98%84%20%EB%B0%A9%EB%B2%95.png)
GCC용 빌드 스크립트(현재 작동함)를 만들려고 하는데 GCC/binutils를 업데이트할 때 모든 필수 라이브러리 재구축을 건너뛸 수 있기를 바랍니다. 스크립트가 건너뛸 모든 단계를 포함하여 기본 빌드 디렉터리에 파일을 생성하도록 하고 싶습니다. 어떻게 해야 합니까? 명령 cat
과 찾기를 사용하여 파일에 단계가 있는지 확인하십시오. 이렇게 하면 필요한 경우 특정 부품을 수동으로 다시 빌드할 수 있습니다.
업데이트: 게시된 답변에서는 makefile이 필요하다고 가정하는 것 같습니다. 매우 번거롭고 원하지 않는 빌드 프로세스는 makefile에서 원하지 않는 많은 CD, 구성, make, 설치 단계로 구성됩니다. 조금도. 스크립트가 거의 완성되었으며 이것이 나에게 필요한 마지막 단계입니다...
업데이트 2: 아래 설명에서 말했듯이 저는 Windows에서 MSYS bash를 셸로 사용하고 있습니다.
감사해요!
추신: 스크립트를 실행할 때마다 "완료된 단계 건너뛰기"를 수행해야 합니다.
답변1
make
나는 GNU 친구들이 작성한 소개가 필요한 것 같다고 생각합니다 .
Make는 여러 중간 파일을 보고 어떤 파일을 다시 컴파일해야 하는지 결정할 수 있습니다. 그리고 그 중 어느 파일에 따라 지원 파일을 재귀적으로 다시 빌드해야 하는지도 알아보세요.
Makefile을 생성하여 미리 설정해야 하지만 기꺼이 수행할 수 있을 것 같습니다.
자세한 내용은 다음 URL을 확인하세요.http://www.gnu.org/software/make/. 사실, 두 번째 요점은 제가 할 수 있는 어떤 것보다 더 잘 설명하는 것처럼 들립니다.
답변2
그렇다면 실제로 프레임 작성에 대해 묻는 것이 아니라 텍스트 파일에 특정 줄이 있는지 확인하는 방법에 대한 구체적인 질문인 것 같습니다.
foo
문자열이 파일에 존재하는지 알고 싶다면 다음을 수행하십시오.
if grep -q foo thefile; then
# it's there
else
# otherwise
fi
그러면 문제가 해결될 것입니다.