1.4. 帮助

如果您在本书中遇到困难或者问题,请查看 FAQ 页 http://www.linuxfromscratch.org/faq/#generalfaq,您所遇到的问题往往这里已经有解答了。如果 FAQ 没有解决您的问题,请尝试找到问题的根源, http://www.linuxfromscratch.org/hints/downloads/files/errors.txt上的提示将给您提供一些故障诊断的指导。

我们也有一个出色的 LFS 社区通过 IRC 和邮件列表为您提供帮助(请参看本书的Section 1.3, “资源” 小节)。为了帮助诊断和解决问题,您需要在您的帮助请求中包含所有相关的信息。

1.4.1. 需要提及的内容

除了一份您所遇到的问题的简短描述外,在任何帮助请求中您还需要附加一些必需的信息:

  • 您所使用的 LFS Book 的版本(本书的版本是 6.1)

  • 创建 LFS 所用的宿主 Linux 发行版的名称及其版本

  • 遇到问题的软件包或所在的章节

  • 确切的错误信息或故障现象描述

  • 注意您是否完全是按本书所说的在做

[Note]

注意

不按本书说的做并不意味着我们就不会给您提供帮助,毕竟 LFS 是个性化的选择。提供您在建立过程中所做的任何更改,将有助于我们估计和确定导致您所遇到的问题的可能原因。

1.4.2. Configure 脚本的问题

如果您执行 configure 脚本的时候,某个地方出错了,请检查 config.log 文件,这个文件可能包含 configure 过程中没有输出到屏幕的错误,如果您需要请求帮助,请把这里面相关信息也包含进去。

1.4.3. 编译问题

屏幕输出和各种产生文件的内容,对确定产生编译问题的原因都是有用的。 configure 脚本和运行 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

这对于正确的分析问题是不够的,因为它只是提示有东西出错了,而没有说是什么出错了。上面例子中全部都应该保存下来,因为它包括了所运行的命令和相关的错误信息。

http://catb.org/~esr/faqs/smart-questions.html上有一篇很好的文章,讲述如何在 Internet 上寻求帮助,请阅读并遵照文章中的提示,将有助于您得到您所需要的答案。