如果你在使用本书的过程中遇到了问题,并且这个问题不在FAQ(常见问题) (http://www.linuxfromscratch.org/faq)中,你将发现在Internet Relay Chat (IRC) 和邮件列表上的大多数人会乐于提供帮助。LFS邮件列表的概述可以在 Chapter 1 - Mailing lists. 中找到。为了便于我们解决你的问题,请在寻求帮助时提供尽可能多的信息。
除了一个关于你所遇到的问题的简短解释,有一些重要的事项应在你寻求帮助时说明:
你所使用的书的版本 (是 CVS-20040109),
你用来创建LFS的主系统及其版本,
带给你麻烦的包或某节,
你收到的确切出错信息或症状,
你是否没有用书中的方法。
(注意:如果你没有用书中的方法,并不意味着我们不会帮助你。毕竟,LFS就是关于选择的。说明这个情况将利于我们找到问题的其它可能原因。)
当运行配置脚本(configure)时出现了错误,看一看config.log的最后一行,这个文件可能包含没有打印在屏幕上的出错信息。在寻求帮助时附带上相关的行。
为了帮助我们找到错误的原因,屏幕输出和几个文件的内容是很有用的。从./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 |
以及后面部分。这些信息对于我们诊断问题是不够的,因为它只说了出了某种问题,并没有说出了什么问题。上面例子中的所有部分都应该附带上,因为它包含了所执行的命令和该命令的出错信息。
Eric S. Raymond写了有一篇很好的文章,关于如何从网上寻求帮助(不限于LFS),可以从 http://www.tuxedo.org/~esr/faqs/smart-questions.html得到。认真阅读并照着做,你就更有可能找到解决问题的方法。
许多软件包都提供了测试套件,根据它们的重要程序,我们可能会推荐你运行。有的软件包肯定会产生错误,如果你遇到这种情况,请查看 LFS Wiki 页 http://wiki.linuxfromscratch.org/,看看我们是不是已经把你遇到的情况写上了,如果我们已经写上了,通常也就是说可以放心地继续下去。