gentoo:learn_gentoo:emerge

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
gentoo:learn_gentoo:emerge [2024/05/08 15:42] – [패키지 업데이트] baecygentoo:learn_gentoo:emerge [2024/05/08 16:07] (현재) – ['압축 풀기' 단계에서 이머징 패키지 실패] baecy
줄 147: 줄 147:
  
 <WRAP info center round> <WRAP info center round>
-**참고 자료** +**참고 자료** \\ 
-자세한 내용은 [[https://wiki.gentoo.org/wiki/User:Sam/Portage_help/Maintaining_a_Gentoo_system#World_file_hygiene사용자:샘/포티지 도움말/젠투_시스템 유지]]를 참고하세요.+자세한 내용은 [[https://wiki.gentoo.org/wiki/User:Sam/Portage_help/Maintaining_a_Gentoo_system#World_file_hygiene|사용자:샘/포티지 도움말/젠투_시스템 유지]]를 참고하세요.
 </WRAP> </WRAP>
 ==== 이머지 재개하기 === ==== 이머지 재개하기 ===
 여러 패키지의 이머지가 중단된 경우(예: ctrl+c, 크래시...) ''--resume'' 옵션을 사용하여 중단된 패키지에서 이머지를 재개할 수 있습니다. ''--keep-going'' 및 ''--skipfirst'' 옵션도 유용할 수 있습니다. 자세한 내용은 이머지 맨 페이지를 참조하세요. 여러 패키지의 이머지가 중단된 경우(예: ctrl+c, 크래시...) ''--resume'' 옵션을 사용하여 중단된 패키지에서 이머지를 재개할 수 있습니다. ''--keep-going'' 및 ''--skipfirst'' 옵션도 유용할 수 있습니다. 자세한 내용은 이머지 맨 페이지를 참조하세요.
  
-===== 중 =====+==== 환경 변수를 통해 임시 구성을 포티지에 전달하기 ==== 
 +<WRAP important center round 100%> 
 +**경고** \\ 
 +명령줄에서 환경 변수를 포티지에 전달하면 시스템이 일시적으로 변경될 뿐입니다. 이러한 변경 사항은 [[https://wiki.gentoo.org/wiki/Upgrading_Gentoo시스템 업데이트]]를 통해 되돌릴 수 있습니다. 이 방법은 주로 ''--pretend'' 옵션과 함께 구성 변경의 효과를 미리 볼 때 유용합니다. 포티지 구성 변경은 일반적으로 [[.:make.conf|/etc/portage/make.conf]], [[https://wiki.gentoo.org/wiki//etc/portage/package.accept_keywords|/etc/portage/package.accept_keywords]], [[https://wiki.gentoo.org/wiki//etc/portage/package.use|/etc/portage/package.use]] 등과 같은 구성 파일을 통해 이루어집니다. 
 +</WRAP> 
 +명령줄에 환경 변수를 선언하여 임시 구성 값을 전달하면 해당 호출에 대한 동작에만 영향을 줄 수 있습니다. 예를 들어, [[https://packages.gentoo.org/useflags/svg|svg]] [[.:USE flags|USE 플래그]]가 활성화된 [[https://packages.gentoo.org/packages/app-editors/emacs|app-editors/emacs]]을 병합하되 이 USE 플래그 설정을 영구적으로 만들지 않으려면 다음과 같이 하세요: 
 +<code>root #USE='svg' emerge app-editors/emacs</code> 
 +또는 이빌드에서 ''econf'' 함수를 사용하는 패키지에 추가 구성 옵션을 전달할 수 있습니다: 
 +<code>root #EXTRA_ECONF='--without-compress-install' emerge app-editors/emacs</code> 
 +<WRAP info center round 100%> 
 +**참고** \\ 
 +[[https://wiki.gentoo.org/wiki/Sudo|sudo]]를 사용하여 emerge를 호출하는 경우, sudo는 일반적으로 실되는 환경을 보존하지 않으므로 **sudo** //호출 후//에 환경 변수를 설정해야 할 수 있습니다: 
 +<code>user $sudo USE='svg' emerge -av app-editors/emacs</code> 
 +</WRAP> 
 + 
 +==== 파일 이머지 ==== 
 +파일을 직접 이머지하는 것이 유용한 경우가 있는데, 예를 들어 패키지에 /usr/lib/libunwind.a가 필요하지만 어떤 패키지가 이 파일을 제공하는지 알 수 없는 경우를 들 수 있습니다. 
 +<code> 
 +user $emerge -p /usr/lib/libunwind.a 
 +다음은 병합될 패키지의 순서입니다: 
 + 
 +종속성 계산... 완료! 
 +종속성 해결에는 2.76초가 걸렸습니다(백트래킹: 0/20). 
 + 
 +[ebuild  R    ] sys-libs/llvm-libunwind-17.0.6 
 +</code> 
 +===== 문제 해결 ===== 
 +<WRAP center round 100%> 
 +**참고 항목** \\ 
 +포티지 문제에 대한 항목은 [[https://wiki.gentoo.org/wiki/User:Sam/Portage_help|사용자:샘/포티지 도움말]]을 참조하십시오. 
 +</WRAP> 
 + 
 +==== '압축 풀기' 단계에서 이머징 패키지 실패 ==== 
 +패키지를 압축 해제할 때 다음과 같은 메시지가 나타날 수 있습니다: 
 +<code> 
 + * Error messages for package dev-libs/libinput-1.16.0: 
 + * The ebuild phase 'unpack' has exited unexpectedly. This type of behavior 
 + * is known to be triggered by things such as failed variable assignments 
 + * (bug #190128) or bad substitution errors (bug #200313). Normally, before 
 + * exiting, bash should have displayed an error message above. If bash did 
 + * not produce an error message above, it's possible that the ebuild has 
 + * called `exit` when it should have called `die` instead. This behavior 
 + * may also be triggered by a corrupt bash binary or a hardware problem 
 + * such as memory or cpu malfunction. If the problem is not reproducible or 
 + * it appears to occur randomly, then it is likely to be triggered by a 
 + * hardware problem. If you suspect a hardware problem then you should try 
 + * some basic hardware diagnostics such as memtest. Please do not report 
 + * this as a bug unless it is consistently reproducible and you are sure 
 + * that your bash binary and hardware are functioning properly. 
 +</code> 
 +<code> 
 + * dev-libs/libinput-1.16.0 패키지에 대한 오류 메시지: 
 + * 이빌드 단계 '언팩'이 예기치 않게 종료되었습니다. 이러한 유형의 동작은  
 + * 변수 할당 실패(버그 #190128) 또는 잘못된 치환 오류(버그 #200313) 등으로 인해  
 + * 트리거되는 것으로 알려져 있습니다. 일반적으로 bash를 종료하기 전에 위의  
 + * 오류 메시지가 표시되어야 합니다. bash가 위의 오류 메시지를 표시하지 않았다면,  
 + * 이빌드가 'exit'를 호출해야 할 때 'die'를 호출했을 가능성이 있습니다. 
 + * 이 동작은 손상된 bash 바이너리 또는 메모리 또는 CPU 오작동과 같은  
 + * 하드웨어 문제로 인해 트리거될 수도 있습니다. 문제를 재현할 수 없거나  
 + * 무작위로 발생하는 것처럼 보인다면 하드웨어 문제로 인해 트리거되었을 가능성이 높습니다.  
 + * 하드웨어 문제가 의심되는 경우 멤테스트와 같은 몇 가지  
 + * 기본적인 하드웨어 진단을 시도해 보세요. 지속적으로 재현할 수 있고  
 + * 배시 바이너리와 하드웨어가 제대로 작동하는 것이 확실하지 않은 경우에는 버그로 신고하지 마세요. 
 +</code> 
 +이 문제는 위의 출력에 나열된 이유 때문일 수도 있지만, 포티지가 이빌드의 소스 파일의 압축을 푸는 데 사용하는 경로의 디스크 공간이 부족해서 발생하는 경우가 많습니다. 이 위치는 //PORTAGE_TMPDIR// 변수를 통해 설정되며, 포티지를 쿼리하여 빠르게 찾을 수 있습니다: 
 +<code> 
 +user $portageq envvar PORTAGE_TMPDIR 
 +/var/tmp 
 +</code> 
 +[[https://wiki.gentoo.org/wiki/GNU_Coreutils#df|df]] 명령은 //PORTAGE_TMPDIR//이 마운트된 파티션(루트(/) 파티션일 가능성이 높습니다)의 사용 가능한 디스크 공간을 확인하는 데 사용할 수 있습니다. 디스크 공간을 확보하는 방법에 대한 자세한 내용은 [[https://wiki.gentoo.org/wiki/Knowledge_Base:Freeing_disk_space|디스크 공간 확보하기]]를 참조하세요.
  
 +===== 참고 항목 =====
  
 +[[.:dispatch-conf]] - 패키지 업데이트 후 구성 파일을 안전하고 편리하게 관리하는 데 사용되는 [[.:Portage|포티지]]에 포함된 유틸리티입니다.
  
 +[[.:Portage|포티지]] - 젠투의 공식 패키지 관리자 및 배포 시스템.
  • gentoo/learn_gentoo/emerge.1715182923.txt.gz
  • 마지막으로 수정됨: 2024/05/08 15:42
  • 저자 baecy