젠투: 이전 이력서 데이터를 유지하면서 패키지를 생성하는 방법은 무엇입니까?

젠투: 이전 이력서 데이터를 유지하면서 패키지를 생성하는 방법은 무엇입니까?

Gentoo Linux에서 병렬 빌드가 활성화된 여러 패키지를 빌드하고 있는데 그 중 하나가 소스 코드를 컴파일하는 데 많은 RAM이 필요하기 때문에 실패한다고 가정해 보겠습니다. 따라서 컴파일러의 메모리가 부족해지고 이러한 현상이 발생합니다. 문제의 패키지는 빌드되는 유일한 패키지가 아니므로 해당 패키지만 있으면 아마도 문제 없이 빌드될 것입니다. 그래서 나는 그 패키지가 나타나기를 원하고, 그것이 완료되면 이전에 나타난 나머지 부분을 복원하기를 원합니다. 어떻게 해야 합니까?

온라인에서 다음과 같은 몇 가지 솔루션을 보았습니다.목록을 resume파일로 저장하고 이머지로 로드하세요, 그러나 이러한 솔루션은 최고가 아닌 것 같습니다(솔루션이 병렬 이머징을 지원하지 않는 것 같습니다). 이상적으로 가장 좋은 솔루션은 emerge --resume문제가 되는 패키지를 별도로 설치한 후에도 이전의 이머지를 계속할 수 있도록 하는 것입니다.

답변1

emerge ...
# fail
ebuild <PORTDIR>/<package_that_failed>.ebuild merge
emerge --resume

테스트되지 않았지만 작동해야 함

답변2

표시할 패키지 목록을 지정하는 방법에 따라 다릅니다. 많은 종속성을 도입하는 패키지 또는 종속성 세트를 지정하여 수행된 경우 다음을 빌드합니다.문제가 있는동일한 명령을 다시 압축하고 실행하십시오. 이 경우, 이머지는 병합된 패키지를 설치하지 않습니다.

그러나 예상치 못한 일을 수행하고 명령줄에서 패키지 목록을 수동으로 지정하는 경우 목록에서 병합된 패키지를 수동으로 제거해야 합니다. 내가 아는 한 이미 병합된 콘텐츠를 제외하는 매개변수가 없기 때문입니다.

어쩌면 gentoolkit이나 portage-tools의 다른 도우미 응용 프로그램을 사용하여 마법을 부릴 수도 있지만 불행히도 저는 이것들에 익숙하지 않습니다.

관련 정보