자료 | 빌드 준비 |
참고
LFS 명령어로 패키지를 빌드하는 과정에서 문제가 발생한 경우, 1.4절 "자원"에 나열된 LFS 지원 채널을 통해 논의하기 전에 업스트림 지원 채널에 직접 문제를 게시하는 것은 권장하지 않습니다. 업스트림 유지 관리자가 LFS 빌드 절차에 익숙하지 않은 경우가 많기 때문에 그렇게 하는 것은 매우 비효율적일 수 있습니다. 실제로 업스트림 문제가 발생했더라도 LFS 커뮤니티에서 업스트림 관리자가 원하는 정보를 분리하여 적절한 보고서를 작성하는 데 도움을 받을 수 있습니다.
업스트림 지원 채널을 통해 직접 질문해야 하는 경우, 많은 업스트림 프로젝트에서 지원 채널이 버그 트래커와 분리되어 있다는 점에 유의해야 합니다. 질문을 위한 '버그' 신고는 유효하지 않은 것으로 간주되며 이러한 프로젝트의 업스트림 개발자를 괴롭힐 수 있습니다.
이 책에서 작업하는 동안 문제나 궁금한 점이 발생하면 FAQ 페이지를 참조하세요. 이 페이지에 이미 답변이 있는 경우가 많습니다. 해당 페이지에서 질문에 대한 답변이 없는 경우 문제의 원인을 찾아보세요. 다음 힌트에서 문제 해결을 위한 몇 가지 지침을 얻을 수 있습니다
FAQ에서 문제를 찾을 수 없는 경우 메일링 리스트 검색을 진행하세요.
또한 메일링 리스트와 IRC를 통해 기꺼이 도움을 제공하는 훌륭한 LFS 커뮤니티가 있습니다(이 책의 1.4절 "자원" 섹션 참조). 하지만 매일 여러 건의 지원 문의가 들어오고 있으며, 그 중 상당수는 FAQ로 이동하거나 메일링리스트를 먼저 검색하면 쉽게 답을 얻을 수 있는 것들이었습니다. 따라서 가능한 한 최상의 지원을 제공하기 위해서는 먼저 스스로 조사를 해보셔야 합니다. 그래야 좀 더 특이한 지원 요구사항에 집중할 수 있습니다. 검색을 통해 해결책을 찾을 수 없는 경우 지원 요청에 모든 관련 정보(아래에 언급된 내용)를 포함하시기 바랍니다.
발생한 문제에 대한 간략한 설명과 함께 도움 요청에는 다음과 같은 필수 사항이 포함되어야 합니다.
참고
이 책에서 벗어났다고 해서 저희가 도움을 드리지 않는다는 의미는 아닙니다. 결국 LFS는 개인 취향에 관한 것입니다. 정해진 절차에 대한 변경 사항을 미리 알려주시면 문제의 가능한 원인을 평가하고 파악하는 데 도움이 됩니다.
구성 스크립트를 실행하는 동안 문제가 발생하면 config.log 파일을 검토하세요. 이 파일에는 구성 중에 발생한 오류 중 화면에 인쇄되지 않은 오류가 포함되어 있을 수 있습니다. 도움을 요청해야 하는 경우 관련 줄을 포함하세요.
화면 출력과 다양한 파일의 내용은 컴파일 문제의 원인을 파악하는 데 유용합니다. 구성 스크립트와 make 실행의 화면 출력은 도움이 될 수 있습니다. 전체 출력을 포함할 필요는 없지만 관련 정보를 모두 포함해야 합니다. 다음은 make 화면 출력에 포함할 정보의 유형에 대한 예입니다.
gcc -DALIASPATH=\"/mnt/lfs/usr/share/locale:.\" -DLOCALEDIR=\"/mnt/lfs/usr/share/locale\" -DLIBDIR=\"/mnt/lfs/usr/lib\" -DINCLUDEDIR=\"/mnt/lfs/usr/include\" -DHAVE_CONFIG_H -I. -I. -g -O2 -c getopt1.c
gcc -g -O2 -static -o make ar.o arscan.o commands.o dir.o expand.o file.o function.o getopt.o implicit.o job.o main.o misc.o read.o remake.o rule.o signame.o variable.o vpath.o default.o remote-stub.o version.o opt1.o
-lutil job.o: In function `load_too_high'.
/lfs/tmp/make-3.79.1/job.c:1565: undefined reference
to `getloadavg'
collect2: ld returned 1 exit status
make[2]: *** [make] Error 1
make[2]: Leaving directory `/lfs/tmp/make-3.79.1'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/lfs/tmp/make-3.79.1'
make: *** [all-recursive-am] Error 2
이런 경우 많은 사람들이 가장 마지막 줄만 보냅니다.
make [2]: *** [make] Error 1
이 정보는 무엇이 잘못되었는지가 아니라 무엇이 잘못되었다는 것만 기록하기 때문에 문제를 진단하기에 충분하지 않습니다. 위의 예에서와 같이 실행된 명령과 모든 관련 오류 메시지를 포함한 전체 섹션을 저장해야 합니다.
인터넷에서 도움을 요청하는 방법에 대한 현명한 질문 요령은 온라인으로 확인할 수 있습니다. 이 문서를 읽고 힌트를 따라하세요. 이렇게 하면 필요한 도움을 받을 가능성이 높아집니다.