cvs commit: www/test/faq index.html

jeroen at linuxfromscratch.org jeroen at linuxfromscratch.org
Mon Aug 25 22:40:59 PDT 2003


jeroen      03/08/25 23:40:59

  Modified:    test/faq index.html
  Log:
  Split up the FAQ part 1 - the general FAQ.
  
  Revision  Changes    Path
  1.42      +240 -1545 www/test/faq/index.html
  
  Index: index.html
  ===================================================================
  RCS file: /home/cvsroot/www/test/faq/index.html,v
  retrieving revision 1.41
  retrieving revision 1.42
  diff -u -r1.41 -r1.42
  --- index.html	19 Aug 2003 23:41:08 -0000	1.41
  +++ index.html	26 Aug 2003 05:40:59 -0000	1.42
  @@ -1,5 +1,5 @@
   <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  -	   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  +   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
   <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
   
   <head>
  @@ -13,14 +13,14 @@
   	<link rel="stylesheet" type="text/css" href="../style/screen.css" media="screen" />
   	<link rel="stylesheet" type="text/css" href="../style/print.css" media="print" />
   	<link rel="icon" href="../images/favicon.ico" type="image/x-icon" />
  -	<style type="text/css">ul {list-style-type: none;}</style>
   </head>
   
  -<body id="body" class="faq">
  +<body id="body" class="root">
   
   <div id="header">
   	<ul id="sectionnav">
   		<li><a href="#index" class="hidden" accesskey="2">Skip to content</a></li>
  +		<li><a href="../lfs/news.html" accesskey="l"><span class="accesskey">L</span>FS</a></li>
   		<li><a href="../blfs/news.html" accesskey="b"><span class="accesskey">B</span>eyond LFS</a></li>
   		<li><a href="../alfs/news.html" accesskey="a"><span class="accesskey">A</span>utomated LFS</a></li>
   		<li><a href="../hints/news.html" accesskey="h"><span class="accesskey">H</span>ints</a></li>
  @@ -38,1568 +38,230 @@
   	</div>
   </div>
   
  -<div id="index">
  -<h2>The LFS FAQ</h2>
  -<h3>Created by Seth W. Klein</h3>
  -<h3>Maintained by <a href="mailto:jeroen at linuxfromscratch.org">Jeroen Coumans</a></h3>
  -	<dl>
  -		<dt>1.  <a href="#intro">Introduction</a></dt>
  -			<dd>
  -				<dl>
  -					<dt>1.1. <a href="#why-faq">Why this FAQ?</a></dt>
  -					<dt>1.2. <a href="#what-is-lfs">What is LFS?</a></dt>
  -					<dt>1.3. <a href="#thanks">Thanks</a></dt>
  -				</dl>
  -			</dd>
  -		<dt>2.  <a href="#how-to">How-To</a></dt>
  -		<dd>
  -			<dl>
  -				<dt>2.1. <a href="#netiquette">What about netiquette?</a></dt>
  -				<dt>2.2. <a href="#which-list">Which list should I use for what topic?</a></dt>
  -				<dt>2.3. <a href="#getting-help">Where is the best place to get help?</a></dt>
  -				<dt>2.4. <a href="#newbie">What if I'm a newbie to Linux or LFS?</a></dt>
  -				<dt>2.5. <a href="#contributing-to-faq">Contributing to this FAQ.</a></dt>
  -				</dl>
  -			</dd>
  -		<dt>3.  <a href="#frb">Frequently Reported Bugs</a></dt>
  -			<dd>
  -				<dl>
  -					<dt>3.1. <a href="#wrong-ln-s-command">The "ln -s" commands in the Book are wrong.</a></dt>
  -					<dt>3.2. <a href="#its-hardlink-not-copy">/bin/foo is a copy of /bin/bar.</a></dt>
  -					<dt>3.3. <a href="#why-not-version">Can I use a version newer than the one in the Book?</a></dt>
  -					<dt>3.4. <a href="#new-version">There's a new version of package Foo.</a></dt>
  -					<dt>3.5. <a href="#delete_key_not_work">The Delete key doesn't work.</a></dt>
  -					<dt>3.6. <a href="#shutdown-on-fsck-error">The system shuts down when fsck errors out!</a></dt>
  -					<dt>3.7  <a href="#missing-fm-project">The freshmeat project page doesn't exist.</a></dt>
  -				</dl>
  -			</dd>
  -		<dt>4.  <a href="#fre">Frequently Requested Enhancements</a></dt>
  -			<dd>
  -				<dl>
  -					<dt>4.1. <a href="#add-grub">Why not use GRUB instead of LILO?</a></dt>
  -					<dt>4.2. <a href="#why-not-new-lilo">Why not upgrade LILO to the latest version?</a></dt>
  -					<dt>4.3. <a href="#why-not-faq">Why not include the FAQ in the book?</a></dt>
  -					<dt>4.4. <a href="#why-vim">Why is vim in the book?</a></dt>
  -					<dt>4.5. <a href="#why-ed">Why is ed in the book?</a></dt>
  -					<dt>4.6. <a href="#why-not-package-management">Why isn't some package manager in the book?</a></dt>
  -				</dl>
  -			</dd>
  -		<dt>5.  <a href="#resources">Resources</a></dt>
  -			<dd>
  -				<dl>
  -					<dt>5.1. <a href="#alpha-fixes">Is there information about LFS on the Alpha?</a></dt>
  -					<dt>5.2. <a href="#where-lfs-packages">Where are the lfs-packages tarballs or wget scripts?</a></dt>
  -					<dt>5.3. <a href="#how-to-find">How do I find a package or command?</a></dt>
  -					<dt>5.4. <a href="#kernel-modules">How do I compile a kernel or set up modules?</a></dt>
  -					<dt>5.5. <a href="#what-dist">What distribution should I use to start from?</a></dt>
  -					<dt>5.6. <a href="#wheres-which">Where's which?</a></dt>
  -					<dt>5.7. <a href="#portmap">Where's portmap?</a></dt>
  -					<dt>5.8. <a href="#where-ncurses-mandrake">Where's libncurses.a in Mandrake?</a></dt>
  -					<dt>5.9. <a href="#bootcd">How do I make a bootable CD?</a></dt>
  -					<dt>5.10. <a href="#really-small">How do I make that really small install the book mentions?</a></dt>
  -					<dt>5.11. <a href="#cross-compile">How do I cross compile LFS?</a></dt>
  -					<dt>5.12. <a href="#old-sources">I'm having trouble compiling something really old.</a></dt>
  -					<dt>5.13. <a href="#lfs-logos">Where can I get LFS Logos?</a></dt>
  -					<dt>5.14. <a href="#quake3">You LFSers play Quake?!?</a></dt>
  -				</dl>
  -			</dd>
  -		<dt>6.  <a href="#fsc">Frequently Sought Cluebits</a>
  -			</dt>
  -				<dd>
  -					<dl>
  -					<dt>6.1. <a href="#dos-text">What's a DOS format text file?</a></dt>
  -					<dt>6.2. <a href="#how-to-compile">How do i compile a package?</a></dt>
  -					<dt>6.3. <a href="#should-i-keep-sources">Do I need to keep the source after installing?</a></dt>
  -					<dt>6.4. <a href="#no-dev-eth0">Where is /dev/eth0?</a></dt>
  -					<dt>6.5. <a href="#no-poweroff">How do I make my machine poweroff when shut down?</a></dt>
  -					<dt>6.6. <a href="#how-to-create-user">How do I create a non-root user?</a></dt>
  -					<dt>6.7. <a href="#kernel-header-copy">Why copy the kernel headers instead of linking them?</a></dt>
  -					<dt>6.8. <a href="#gcc-warnings">Are compiler warnings from GCC bad?</a></dt>
  -					<dt>6.9. <a href="#how-to-print">How do I print?</a></dt>
  -					<dt>6.10. <a href="#konsole-ps1">How do I set PS1 in Konsole?</a></dt>
  -				</dl>
  -			</dd>
  -		<dt>7.  <a href="#fee">Frequently Encountered Errors</a></dt><dd><dl><dt>7.1.  <a href="#fee-anytime">Errors Seen at Any Time</a></dt><dd><dl><dt>7.1.1. <a href="#any-no-such-file">No such file or directory</a></dt>
  -				</dl>
  -			</dd>
  -		<dt>7.2.  <a href="#fee-compile">Compile Time Errors</a></dt>
  -			<dd>
  -				<dl>
  -					<dt>7.2.1.  <a href="#fee-compile-any">Compile Time Errors From Any Package</a></dt>
  -						<dd>
  -							<dl>
  -								<dt>7.2.1.1. <a href="#undefined-deflate">undefined reference to `deflate'</a></dt>
  -								<dt>7.2.1.2. <a href="#configure-no-such-file">bash: ./configure: No such file or directory</a></dt>
  -								<dt>7.2.1.3. <a href="#bad-interpreter-permission-denied">./configure: bad interpreter: Permission denied</a></dt>
  -								<dt>7.2.1.4. <a href="#conf-guess-fail">configure can't guess my host type.</a></dt>
  -								<dt>7.2.1.5. <a href="#config-not-gnu-c">checking whether we are using GNU C... no</a></dt>
  -								<dt>7.2.1.6. <a href="#config-hang-size_t">Why does configure hang at "checking for signed size_t type..."?</a></dt>
  -								<dt>7.2.1.7. <a href="#perm-denied">I'm getting `/dev/null: Permission denied'</a></dt>
  -								<dt>7.2.1.8. <a href="#sig11">signal 11 (internal error: Segmentation fault)</a></dt>
  -								<dt>7.2.1.9. <a href="#gtk-2_0">I'm getting errors building a package that requires GTK+,but I've installed GTK+ 2.x.</a></dt>
  -								<dt>7.2.1.10. <a href="#missing-x-includes">X11/Xlib.h: No such file or directory</a></dt>
  -								<dt>7.2.1.11. <a href="#gnome-versions">Any error while building part of Gnome</a></dt>
  -								<dt>7.2.1.12. <a href="#cannot-find-lc">ld: cannot find -lc</a></dt>
  -							</dl>
  -						</dd>
  -					<dt>7.2.2.  <a href="#fee-compile-specific">Compile Time Errors From Specific Packages</a></dt>
  -						<dd>
  -							<dl>
  -								<dt>7.2.2.1. <a href="#conflicting-gethostname">conflicting types for `gethostname'</a></dt>
  -								<dt>7.2.2.2. <a href="#yytext_ptr-undeclared">"lex.l:429: `yytext_ptr' undeclared"while building modutils</a></dt>
  -								<dt>7.2.2.3. <a href="#xfree-png-lz">undefined reference to `deflate'</a></dt>
  -								<dt>7.2.2.4. <a href="#no-linuxthreads">Glibc fails with ". . . . it is normal to compile GNU libc with the `linuxthreads' add-on. . . ."</a></dt>
  -								<dt>7.2.2.5. <a href="#perl-missing-separator">Perl fails with "*** missing separator.  Stop."</a></dt>
  -								<dt>7.2.2.6. <a href="#unknown-pseudo-op-hidden">Error: Unknown pseudo-op: `.hidden'</a></dt>
  -								<dt>7.2.2.7. <a href="#optimized-glibc-fail">My optimized build of glibc is failing in spinlock.c</a></dt>
  -								<dt>7.2.2.8. <a href="#asm-global-directive">Glibc fails with "cannot determine asm global directive".</a></dt>
  -								<dt>7.2.2.9. <a href="#glibc-awk-fail">Glibc fails and mentions BEGIN and END.</a></dt>
  -								<dt>7.2.2.10. <a href="#glibc-no-ld_map">Glibc fails with "ld.map: No such file or directory".</a></dt>
  -								<dt>7.2.2.11. <a href="#sh-utils-getloadavg">My static sh-utils build is failing with "undefined reference to `getloadavg'".</a></dt>
  -								<dt>7.2.2.12. <a href="#cpp-fails-sanity-check">C++ preprocessor "/lib/cpp" fails sanity check</a></dt>
  -							</dl>
  -						</dd>
  -					<dt>7.2.3.  <a href="#fee-compile-notlisted">Compile Time Errors Not Listed Above</a></dt>
  -						<dd>
  -							<dl>
  -								<dt>7.2.3.1. <a href="#gnu-patches">I used a patch from GNU to upgrade. Is that OK?</a></dt>
  -								<dt>7.2.3.2. <a href="#optimizations">When using optimization flags (setting CFLAGS)</a></dt>
  -								<dt>7.2.3.3. <a href="#version-not-in-book">I'm using a version not in the book. Is that a problem?</a></dt>
  -								<dt>7.2.3.4. <a href="#dirty-sources">I didn't delete the source tree after my last attempt. Do I need to?</a></dt>
  -							</dl>
  -						</dd>
  -					</dl>
  -				</dd>
  -			<dt>7.3.  <a href="#fee-runtime">Run Time Errors</a></dt>
  -				<dd>
  -					<dl>
  -						<dt>7.3.1. <a href="#net-pf-x">I'm getting errors about net-pf-?.</a></dt>
  -						<dt>7.3.2. <a href="#char-major-10-135">modprobe: Can't locate module char-major-10-135</a></dt>
  -						<dt>7.3.3. <a href="#no-dev-rtc">modprobe: Can't locate module /dev/rtc</a></dt>
  -						<dt>7.3.4. <a href="#unable-to-mount-root">Kernel panic: VFS: unable to mount root fs</a></dt>
  -						<dt>7.3.5. <a href="#respawning-too-fast">init: Id "1" respawning too fast: disabled for 5 minutes</a></dt>
  -						<dt>7.3.6. <a href="#lilo-errors">What do those LILO errors mean?</a></dt>
  -						<dt>7.3.7. <a href="#f-hostname">My hostname is getting set to "-f"!</a></dt>
  -						<dt>7.3.8. <a href="#less-prints-ad">Why does less (and therefore man) print <AD> instead of hyphens?</a></dt>
  -						<dt>7.3.9. <a href="#eth0-unknown-interface">eth0:unknown interface</a></dt>
  -						<dt>7.3.10. <a href="#spurious-8259A-interrupt">spurious 8259A interrupt: IRQ14</a></dt>
  -					</dl>
  -				</dd>
  -			</dl>
  -		</dd>
  -	</dl>
  -
  -<h3 id="intro">1. Introduction</h3>
  -	<dl>
  -		<dt>1.1. <a href="#why-faq">Why this FAQ?</a></dt>
  -		<dt>1.2. <a href="#what-is-lfs">What is LFS?</a></dt>
  -		<dt>1.3. <a href="#thanks">Thanks</a></dt>
  -	</dl>
  +<div id="container">
  +<div id="rootcontent">
  +	<em><a href="#generalnav" class="hidden">Skip to sitewide navigation</a></em>
   
  -<ul>
  -	<li id="why-faq">
  -		<ul>
  -			<li><h5>1.1. Why this FAQ?</h5></li>
  -			<li>
  -				<p>The FAQ tries to answer questions before they're asked. This saves the trouble of asking them, and sometimes, the trouble of encountering a problem.</p>
  -				<p>This does reduce traffic and improve the signal to noise ratio but that is merely a useful side effect.</p>
  -				<p>Since the FAQ isn't the natural place to look for information, items should be added to it only they can't be added to the appropriate documentation, although sometimes it will be necessary to add a pointer to the information in the documentation.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="what-is-lfs">
  -		<ul>
  -			<li><h5>1.2. What is LFS?</h5></li>
  -			<li>
  -				<p>LFS stands for Linux From Scratch which is a project that documents how to install a Linux system by downloading, building, and installing the packages yourself.</p>
  -				<p>For why you might want to do this, how to do it, and other useful stuff, see the website at <a href="http://www.linuxfromscratch.org/">http://www.linuxfromscratch.org/</a>.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="thanks">
  -		<ul>
  -			<li><h5>1.3. Thanks</h5></li>
  -			<li>
  -				<p>Okay, so this isn't really a FAQ but i had to put it somewhere. ;-)</p>
  -				<p>This FAQ is dedicated to all the hard-working people on the support lists who keep me busy with this FAQ ;-). </p>
  -				<p>Thanks go to...</p>
  -					<ul>
  -						<li>Seth W. Klein for creating and maintaining this FAQ before me.</li>
  -						<li>All the guys (and all of the few girls as well, wish there were more of you) on the lists, from whose answers so many of these answers come.</li>
  -						<li>Especially those of you who sort out a question, its symptoms, and its answer and mail the lot to me. Your IDs are immortalized in the commit logs (though only for the span of a digital forever, but hey, I try :-)</li>
  - 						<li>Tushar Teredesai, Chris Lingard, Jeremy Utley, The Cheeze and countless other people who regularly post FAQ links to the support lists.</li>
  - 						<li>The BLFS editors whose book produces so delightfully few FAQs.</li>
  - 					</ul>
  -			</li>
  -		</ul>
  -	</li>
  -</ul>
  -
  -<h3 id="how-to">2. How-To</h3>
  -	<dl>
  -		<dt>2.1. <a href="#netiquette">What about netiquette?</a></dt>
  -		<dt>2.2. <a href="#which-list">Which list should I use for what topic?</a></dt>
  -		<dt>2.3. <a href="#getting-help">Where is the best place to get help?</a></dt>
  -		<dt>2.4. <a href="#newbie">What if I'm a newbie to Linux or LFS?</a></dt>
  -		<dt>2.5. <a href="#contributing-to-faq">Contributing to this FAQ.</a></dt>
  -	</dl>
  -
  -<ul>
  -	<li id="netiquette">
  -		<ul>
  -			<li><h5>2.1. What about netiquette?</h5></li>
  -			<li>
  -				<p>Here are some practical points of etiquette. They include only those items that will draw mention if missed. Those who've been around project mailing lists awhile will find the first few obvious. There are less obvious items toward the end.</p>
  -				<p>The reasons for these points are omitted for brevity, but rest assured, these guidelines are more than just an individual's personal preference.</p>
  -				<p>While the text refers to "the lists" exclusively, it doesn't intend to ignore the news groups that mirror the mailing lists.</p>
  -				<p>With that out of the way, here are a couple manners oriented items followed by more "mechanical" stuff:</p>
  -				<p>Please remember that it is rude to post questions that are answered in commonly available documentation such as the LFS and BLFS Books, this FAQ, the LFS Hints, the appropriate man pages, the list archives, and Google searches. As long as you can demonstrate that you've made an effort to find the answer and you're not offended by a pointer to documentation, no reasonable person will object to your question.</p>
  -				<p>Most of the bothersome flamewars start when a newbie posts an obvious question, is then criticized (even in a kindly manner), and becomes publically offended. Please try to avoid this situation. "Wordlessly" pointing to the exact spot in the documentation is sufficient. If you feel you must criticize, please do it via private email, not on the lists. The same applies to anything else that may become heated.</p>
  -				<p>The lists have an international membership so slang of all sorts and idiom are likely to be misunderstood. (Witness the recent discussion of "bootstrapping".) Any mention of profanity, politics, war, or religion (even in signatures) is likely to upset someone somewhere in the world so please avoid them as well. Finally, it is considered polite to post in English since many more people on the lists know it than any other language.</p>
  -				<p>Now for the more "mechanical" stuff.</p>
  -				<p><strong>Do not post in HTML.</strong> If you use Yahoo, Hotmail, or Outlook and haven't turned HTML off, then it is on. If you're using another mail client, please do check before posting. If you don't know how to turn HTML off, see <a href="http://www.expita.com/nomime.html">http://www.expita.com/nomime.html</a>.</p>
  -				<p><strong>Wrap text at 72 characters.</strong> If you do not wish to do this by hand, set your mail client to do it automatically when sending.</p>
  -				<p><strong>Reply <em>below</em> quoted text.</strong> Outlook makes this difficult. There is a <a href="http://home.in.tum.de/%7Ejain/software/outlook-quotefix/">plugin to fix Outlook</a>, and <a href="http://home.in.tum.de/%7Ejain/software/oe-quotefix/">one for Outlook Express</a>.</p>
  -				<p><strong>Limit signatures to four lines.</strong></p>
  -				<p><strong>Trim quoted text,</strong> especially signatures. But <strong>do not trim so that it is confusing to read your reply</strong> without consulting the original.</p>
  -				<p><strong>Do not click reply unless you're actually replying to a post.</strong> Use new, or compose, or whatever your mail client calls it, to ask a new question or start a new thread. Reply sets more than just the subject line and will cause your post to appear in the wrong place unless you're actually answering.</p>
  -				<p>The following isn't major, but is useful to know. On the LFS lists, people usually clear the CC field and just mail the list with replies. This is probably not a good idea but is existing practice due to a political situation which is unlikely to change.</p>
  -				<p><a href="http://www.ietf.org/rfc/rfc1855.txt">RFC 1855</a> "provides a minimum set of guidelines for Network Etiquette (Netiquette) and functions as a minimum set of guidelines for individuals, both users and administrators</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="which-list">
  -		<ul>
  -			<li><h5>2.2. Which list should I use for what topic?</h5></li>
  -			<li>
  -				<p>The full answer is at <a href="http://www.linuxfromscratch.org/mailinglists/">http://www.linuxfromscratch.org/mailinglists/</a>, but here is a summary:</p>
  -				<ul>
  -					<li>Send <em>support</em> questions to only lfs-<span class="strong">support</span> and blfs-<span class="strong">support</span>. Questions like "How do I..." and "I'm getting this error..." or anything else requesting help go to the support lists and no where else.</li>
  -					<li>If you are not having trouble following the <em>LFS</em> Book itself, do <em>not</em> email <span class= "strong">lfs</span>-support.</li>
  -					<li>Unless you are <em>suggesting an improvement</em> to the LFS Book itself, do not email lfs-dev.</li>
  -					<li>Only suggestions concerning the BLFS Book are acceptable on blfs-dev.</li>
  -					<li>Things are a little different with blfs-support. Everything that doesn't fit one of the preceding lists fits there except for the price of beer and GNU versus BSD flamewars.</li>
  -					<li>The price of beer, GNU versus BSD, and Microsoft versus Linux flamewars are restricted to lfs-chat. These days, hardware discussion should go there as well.</li>
  -				</ul>
  -				<p>Of special note is that if you mention XFree86, KDE, or GNOME you may be sure that your post does not belong on lfs-dev or lfs-support.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="getting-help">
  -		<ul>
  -			<li><h5>2.3. Where is the best place to get help?</h5></li>
  -			<li>
  -				<p>When this FAQ fails to help, there are several places to go.</p>
  -				<p>If you're having a problem with something in the book, it never hurts to go back over the book. It's surprising how easy it is to overlook little things.</p>
  -				<p>If nothing else, reading the appropriate man and info pages will yield useful information on some subject, if not what you were looking for, and insure that you know enough not to embarrass yourself if you have to ask someone.</p>
  -				<p><a href="http://www.tldp.org/">The Linux Documentation Project</a> has the HOW-TOs and a great deal of other documentation. You might find something there.</p>
  -				<p>The <a href="http://search.linuxfromscratch.org/">website's search</a> includes the mailing lists. Many questions have been discussed there at least once. </p>
  -				<p>For support-type help, IRC is often best. It's faster, and doesn't clog the mailinglists. There's more information about <a href="http://www.linuxfromscratch.org/misc/irc.shtml">the IRC channels</a> on the website.</p>
  -				<p>There are two IRC channels of interest. #LFS, which is a community channel, and #lfs-support, which is for support questions. If you are asking a support question, you are more likely to attract competent and friendly help in #lfs-support.</p>
  -				<p>As a last resort, there are the mailing lists. People will get frustrated with you if you use the wrong one or cross post. Mailing list information is <a href="http://www.linuxfromscratch.org/mailinglists/">on the website</a> and tells which list to use.</p>
  -				<p>Please remember to provide enough information when you post to the mailing lists. In <a href="http://www.linuxfromscratch.org/view/cvs/chapter02/askforhelp.html">chapter 2 of LFS</a> you find a good method for posting.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="newbie">
  -		<ul>
  -			<li><h5>2.4 What if I'm a newbie to Linux or LFS?</h5></li>
  -			<li>
  -				<p>If you've read <a href="http://www.linuxfromscratch.org/view/cvs/preface/prerequisites.html">the prerequisites</a> and <a href="http://www.linuxfromscratch.org/view/cvs/preface/whoread.html">the preface</a> you know that the target audience of LFS are intermediate and advanced Linux users. Anybody who has a couple of months experience with Linux and especially the console should be able to successfully assemble his LFS system. </p>
  -				<p>While LFS seems like a good guide for newbies to Linux, the reality is actually quite different. Experience with the support channels shows that LFS is hard to grasp and a frustrating experience for newbies because they lack understanding of the basic concepts.</p>
  -				<p>Practically, this means that newbies should get some experience before starting with LFS. The <a href="http://www.linuxfromscratch.org/view/cvs/preface/prerequisites.html">prerequisites page</a> lists the minimal required Linux knowledge, but please also read the <a href="http://hints.linuxfromscratch.org/hints/prereading.txt">"Essential pre-reading for life with LFS"</a> hint.</p>
  -				<p>These documents and this FAQ are your basic Linux survival guide. You'll have a great time with LFS if you've read them, and may have some difficulty with LFS and the community, but most likely yourself, if you haven't read them.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="contributing-to-faq">
  -		<ul>
  -			<li><h5>2.5. Contributing to this FAQ.</h5></li>
  -			<li>
  -				<p>Suggestions are more than welcome. The FAQ maintainer can be reached either via direct email or on the appropriate mailing list.</p>
  -				<p>Useful suggestions include the addition of questions that are actually frequently asked -- with well researched answers -- and the removal of questions that are obsolete.</p>
  -				<p>If you intend to regularly contribute to this FAQ, you might want to subscribe to the FAQ mailinglist. All suggestions, additions (and sometimes removals) of the FAQ are discussed there. Patches against the FAQ are also welcome, allthough the current FAQ will undergo some changes to make it easier to navigate.</p>
  -				<p>Everything intended to go in the FAQ without substantial editing must be well thought out, checked, and researched; and written in a style consistent with the existing content.</p>
  -			</li>
  -		</ul>
  -	</li>
  -</ul>
  +<h2>The Linux From Scratch FAQ</h2>
  +<h3>Originally by Seth W. Klein - now maintained by <a href="mailto:jeroen at linuxfromscratch.org">Jeroen Coumans</a></h3>
   
  -<h3 id="frb">3. Frequently Reported Bugs</h3>
  -	<dl>
  -		<dt>3.1. <a href="#wrong-ln-s-command">The "ln -s" commands in the Book are wrong.</a></dt>
  -		<dt>3.2. <a href="#its-hardlink-not-copy">/bin/foo is a copy of /bin/bar.</a></dt>
  -		<dt>3.3. <a href="#why-not-version">Can I use a version newer than the one in the Book?</a></dt>
  -		<dt>3.4. <a href="#new-version">There's a new version of package Foo.</a></dt>
  -		<dt>3.5. <a href="#delete_key_not_work">The Delete key doesn't work.</a></dt>
  -		<dt>3.6. <a href="#shutdown-on-fsck-error">The system shuts down when fsck errors out!</a></dt>
  -		<dt>3.7  <a href="#missing-fm-project">The freshmeat project page doesn't exist.</a></dt>
  -	</dl>
  +<div id="pagenav">
  +	<ul>
  +		<li><a href="#generalfaq">General FAQ</a></li>
  +		<li><a href="#lfsfaq">LFS FAQ</a></li>
  +		<li><a href="#blfsfaq">BLFS FAQ</a></li>
  +		<li><a href="#oldfaq">Old FAQ's</a></li>
  +		<li><a href="#changelog">Changelog</a></li>
  +		<li><a href="#thanks">Thanks</a></li>
  +	</ul>
  +</div>
   
  +<h3 id="generalfaq">General FAQ</h3>
  +<h4><a href="#intro">General information about these FAQ's</a></h4>
   <ul>
  -	<li id="wrong-ln-s-command">
  -		<ul>
  -			<li><h5>3.1. The "ln -s" commands in the Book are wrong.</h5></li>
  -			<li>
  -				 <p>No, the "ln -s" commands in the Book are correct. A symlink is just a special file containing the given fileid. So that fileid is relative to the link, not the working directory when the link is created. Try it and see.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="its-hardlink-not-copy">
  -		<ul>
  -			<li><h5>3.2. /bin/foo is a copy of /bin/bar.</h5></li>
  -			<li>
  -				 <p>Try "ls -i /bin/foo /bin/bar". Are the inode numbers the same? If so, they're not copies, they're hardlinked.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="why-not-version">
  -		<ul>
  -			<li><h5>3.3. Can I use a version newer than the one in the Book?</h5></li>
  -			<li>
  -				<p>If this is your first time building LFS, using a version not in the book or varying from the book in any way is not a good idea. The IRC channel regulars have a saying, "FBBG". As rms, the resident bot, is quick to say, this means, "Follow Book, Book Good." They and the people on the lists have helped many an unhappy newbie who deviated from the book during that first build.</p>
  -				<p>Once you've built a system "by the book", you have a stable knowledge base from which to experiment to your heart's content (or pain, as is often the case.)</p>
  -				<p>If you'd like to experiment then check out <a href="http://osiris.sunderland.ac.uk/~ca9mbu/lfs_packages.html">Matthew Burgess's notes</a> about using the latest versions in LFS CVS.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="new-version">
  -		<ul>
  -			<li><h5>3.4. There's a new version of package Foo.</h5></li>
  -			<li>
  -				<p>If the new version is more than a day old, it is likely that someone has tested the release and reported it on the mailing lists. Please search the archives before posting questions about whether it works.</p>
  -				<p>If you'd like to report the new release, follow these steps to avoid making a duplicate report.</p>
  -				<ul>
  -					<li>Check the <a href="http://freshmeat.net/">freshmeat</a> page for the project to see if it has been updated. If it hasn't, report the release there.</li>
  -					<li>If freshmeat has been updated, check <a href="http://bugs.linuxfromscratch.org/">LFS bugzilla</a> (or <a href="http://blfs-bugs.linuxfromscratch.org/">BLFS bugzilla</a>) to see if the release has been posted there.</li>
  -					<li>If the release is not in bugzilla, report it to lfs-book (or blfs-book for packages in BLFS). And if you like, test it and report any problems or changes in compilation instructions, too.</li>
  -				</ul>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="delete_key_not_work">
  -		<ul>
  -			<li><h5>3.5. The Delete key doesn't work.</h5></li>
  -			<li>
  -				 <p>See: <a href="http://beyond.linuxfromscratch.org/view/cvs/postlfs/inputrc.html">http://beyond.linuxfromscratch.org/view/cvs/postlfs/inputrc.html</a>.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="shutdown-on-fsck-error">
  -		<ul>
  -			<li><h5>3.6. The system shuts down when fsck errors out!</h5></li>
  -			<li>
  -				 <p>Unix systems normally run sulogin if the normal bootup fsck run errors out so that root can log in and fix it. Because sulogin will accept any password if /etc/passwd is corrupt, the LFS developers decided this was a security risk. Therefore, the LFS bootscripts shut the machine down if fsck errors, and it must be booted with the "init=/bin/bash" kernel parameter to get a root shell. Whether this is wise is beyond the scope of the FAQ, but if it doesn't work for you you'll want to change that boot script before it's too late.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="missing-fm-project">
  -		<ul>
  -			<li><h5>3.7. The freshmeat project page doesn't exist.</h5></li>
  -			<li>
  -				<p>The following Freshmeat pages have been removed recently:</p>
  -				<ul>
  -					<li>http://freshmeat.net/projects/gnufileutils/</li>
  -					<li>http://freshmeat.net/projects/sh-utils</li>
  -				</ul>
  -				<p>These projects are discontinued and now maintained in the <a href="http://freshmeat.net/projects/coreutils">coreutils</a> project. Future LFS versions will be updated to this package. For LFS-4.1, refer to <a href="http://test.linuxfromscratch.org/lfs/packages.html">the new LFS packages webpage</a>.</p>
  -			</li>
  -		</ul>
  -	</li>
  +	<li><a href="#why-faq">Why this FAQ?</a></li>
  +	<li><a href="#what-is-lfs">What is LFS?</a></li>
  +	<li><a href="#what-is-blfs">What is BLFS?</a></li>
  +	<li><a href="#contribute">How can I contribute to this FAQ?</a></li>
   </ul>
   
  -<h3 id="fre">4. Frequently Requested Enhancements</h3>
  -	<dl>
  -		<dt>4.1. <a href="#add-grub">Why not use GRUB instead of LILO?</a></dt>
  -		<dt>4.2. <a href="#why-not-new-lilo">Why not upgrade LILO to the latest version?</a></dt>
  -		<dt>4.3. <a href="#why-not-faq">Why not include the FAQ in the book?</a></dt>
  -		<dt>4.4. <a href="#why-vim">Why is vim in the book?</a></dt>
  -		<dt>4.5. <a href="#why-ed">Why is ed in the book?</a></dt>
  -		<dt>4.6. <a href="#why-not-package-management">Why isn't some package manager in the book?</a></dt>
  -	</dl>
  -	<p>LFS is a very basic system, in massive contrast to traditional distributions. The reason is this: LFS is not intended to create your system as you want it. It's intended to be just enough to allow you to build your system as you want it. It's not an end, it's a beginning. When you're done with LFS, you've just started building your system.</p>
  -	<p>This can be a problem if you're new to Unix systems and want a typical desktop install with X and a web browser but have no idea what packages you need. For this reason, there is Beyond Linux From Scratch, or BLFS. It's at <a href="http://beyond.linuxfromscratch.org/">http://beyond.linuxfromscratch.org/</a>.</p>
  -
  +<h4><a href="#support">Support guidelines</a></h4>
   <ul>
  -	<li id="add-grub">
  -		<ul>
  -			<li><h5>4.1. Why not use GRUB instead of LILO?</h5></li>
  -			<li>
  -				<p>GRUB will very likely replace LILO in the book when the GRUB maintainers make a release they call stable. If you'd like to see that happen, you could bug the GRUB maintainers, since current releases seem perfectly stable.</p>
  -				<p>If your current setup uses GRUB or you'd like to use it anyway, you should have no trouble following the GRUB documentation and the LFS "GRUB-Howto" Hint at <a href="http://hints.linuxfromscratch.org/hints/grub-howto.txt">http://hints.linuxfromscratch.org/hints/grub-howto.txt</a>.  If you do this, you can omit bin86, since it is only  used by LILO.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="why-not-new-lilo">
  -		<ul>
  -			<li><h5>4.2. Why not upgrade LILO to the latest version?</h5></li>
  -			<li>
  -				 <p>For now, the book is staying with LILO 22.2 because versions of LILO after 22.2 require <a href="http://nasm.sourceforge.net/">nasm</a>. While there should be no problem installing nasm, the book and many users are reluctant to install an extra package just for LILO. Many users are switching to GRUB. (The book would probably switch to GRUB if the GRUB maintainers made a release they called stable. You could bug the GRUB maintainers if you'd like to see this happen.)</p>
  - <p>Users who switch to GRUB can omit bin86, since it is only used by LILO.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="why-not-faq">
  -		<ul>
  -			<li><h5>4.3. Why not include the FAQ in the book?</h5></li>
  -			<li>
  -				<p>Marc Heerdink may have said it best in a post to lfs-dev:</p>
  -				<blockquote><p>The problem is that the FAQ is a dynamic document. The FAQ for a book release is released only after the book version itself, because the FAQ is updated to reflect the Qs asked about the current version of the book. A link is better, since you'll always have the most up-to-date answers handy.</p></blockquote>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="why-vim">
  -		<ul>
  -			<li><h5>4.4. Why is vim in the book?</h5></li>
  -			<li>
  -				 <p>This is fairly well discussed in the thread starting at <a href="http://linuxfromscratch.org/pipermail/lfs-dev/2002-February/023030.html">http://linuxfromscratch.org/pipermail/lfs-dev/2002-February/023030.html</a>.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="why-ed">
  -		<ul>
  -			<li><h5>4.5. Why is ed in the book?</h5></li>
  -			<li>
  -				<p>The book includes ed because patch uses it to process ed scripts. However, these are rare today; everyone uses diff format patches.</p>
  -				<p>But ed does have other uses:</p>
  -				<ul>
  -					<li>For all who've learned to use it, ed is a very useful emergency editor. The MS Windows standard telnet client can deal with ed but has trouble with fullscreen editors (like vim). And a full featured vim requires not only ncurses, but X11 as well! Any trouble with those libraries will leave the system without an editor if ed isn't present.</li>
  -					<li>Though it's not a reason to have ed in the book, some people actually like ed.</li>
  -					<li>Understanding ed helps with understanding vi(m) and Unix history in general.</li>
  -				</ul>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="why-not-package-management">
  -		<ul>
  -			<li><h5>4.6. Why isn't some package manager in the book?</h5></li>
  -			<li>
  -				<p>Package management - beyond that provided by tarballs and makefiles - is beyond the scope of the book. If nothing else does, the number of different "solutions" should hint at some of the reasons.</p>
  -				<p>Here are a few of the options:</p>
  -				<ul>
  -					<li>No package management is really necessary. Unless it is desirable to monitor package file placement minutely, any package large enough to warrent removal for disk space reasons can be installed in /opt as detailed by the FHS (perhaps in /opt/foo-x.x with a link from /opt/foo), and new releases can usually be installed over the old, although major upgrades and libraries are generally best done by rebuilding the system from the bottom up.</li>
  -					<li>RPM, the Redhat Package Manager, is used by a number of distributions. It is available from <a href="http://www.rpm.org/">http://www.rpm.org/</a>, and there is an RPM Hint to help with installation at <a href="http://hints.linuxfromscratch.org/hints/rpm.txt">http://hints.linuxfromscratch.org/hints/rpm.txt</a>.</li>
  -					<li>There is an RPM based LFS at <a href="http://www.puxedo.org/lvr/">http://www.puxedo.org/lvr/</a></li>
  -					<li>There are several implementations of symlink style package management:
  -						<ul>
  -							<li>Epkg is available from <a href="http://encap.cso.uiuc.edu/epkg/">http://encap.cso.uiuc.edu/epkg/</a>.</li>
  -							<li>Graft is available from <a href="http://www.gormand.com.au/peters/tools/"  >http://www.gormand.com.au/peters/tools/</a>.</li>
  -							<li>GNU Stow is available from <a href="http://www.gnu.org/software/stow/">http://www.gnu.org/software/stow/</a>.</li>
  -							<li>Depot is available from <a href="http://asg.web.cmu.edu/depot/">http://asg.web.cmu.edu/depot/</a>.</li>
  -							<li>And several more are listed in the Graft documentation at <a href="http://www.gormand.com.au/peters/tools/graft/graft.html#research">http://www.gormand.com.au/peters/tools/graft/graft.html#research</a>.</li>
  -						</ul>
  -					</li>
  -					<li>The NetBSD package manager, pkgsrc, is available on other systems including Linux. It is at <a href="ftp://ftp.netbsd.org/pub/NetBSD/packages/bootstrap-pkgsrc/">ftp://ftp.netbsd.org/pub/NetBSD/packages/bootstrap-pkgsrc/</a>.</li>
  -					<li>Originally based on a script written by LFS' own Gerard Beekmans, install-log records a list of files installed by a package as the package is installed. It is available from <a href="http://install-log.sourceforge.net/">http://install-log.sourceforge.net/</a>.</li>
  -					<li>Gerard has since made additions to his script. It is available from <a href="http://linuxfromscratch.org/%7Egerard/log-install">http://linuxfromscratch.org/~gerard/log-install</a>  and <a href="http://linuxfromscratch.org/%7Egerard/pkgdel">http://linuxfromscratch.org/~gerard/pkgdel</a>.</li>
  -					<li>CheckInstall attempts log system calls made by "make install". It is available from <a href="http://asic-linux.com.mx/%7Eizto/checkinstall/">http://asic-linux.com.mx/~izto/checkinstall/</a>.</li>
  -					<li>pkgutils, used by the CRUX distribution, is available from <a href="http://www.fukt.bth.se/%7Eper/pkgutils/">http://www.fukt.bth.se/~per/pkgutils/</a>.</li>
  -					<li>More information about these systems and information about other interesting systems is at <a href="http://hints.linuxfromscratch.org/hints.shtml#package">http://hints.linuxfromscratch.org/hints.shtml#package</a>.</li>
  -				</ul>
  -				<p>If you have an addition to the list, please do email its id, URL, and other information, to the FAQ maintainer or an appropriate LFS mailing list so it can be added here.</p>
  -			</li>
  -		</ul>
  -	</li>
  +	<li><a href="#newbie">I'm a newbie to Linux or LFS and I need some help?</a></li>
  +	<li><a href="#getting-help">Where is the best place to get help?</a></li>
  +	<li><a href="#which-list">Which list should I use for what topic?</a></li>
  +	<li><a href="#netiquette">How do I address the LFS community?</a></li>
   </ul>
   
  -<h3 id= "resources">5. Resources</h3>
  -	<dl>
  -		<dt>5.1. <a href="#alpha-fixes">Is there information about LFS on the Alpha?</a></dt>
  -		<dt>5.2. <a href="#where-lfs-packages">Where are the lfs-packages tarballs or wget scripts?</a></dt>
  -		<dt>5.3. <a href="#how-to-find">How do I find a package or command?</a></dt>
  -		<dt>5.4. <a href="#kernel-modules">How do I compile a kernel or set up modules?</a></dt>
  -		<dt>5.5. <a href="#what-dist">What distribution should I use to start from?</a></dt>
  -		<dt>5.6. <a href="#wheres-which">Where's which?</a></dt>
  -		<dt>5.7. <a href="#portmap">Where's portmap?</a></dt>
  -		<dt>5.8. <a href="#where-ncurses-mandrake">Where's libncurses.a in Mandrake?</a></dt>
  -		<dt>5.9. <a href="#bootcd">How do I make a bootable CD?</a></dt>
  -		<dt>5.10. <a href="#really-small">How do I make that really small install the book mentions?</a></dt>
  -		<dt>5.11. <a href="#cross-compile">How do I cross compile LFS?</a></dt>
  -		<dt>5.12. <a href="#old-sources">I'm having trouble compiling something really old.</a></dt>
  -		<dt>5.13. <a href="#lfs-logos">Where can I get LFS Logos?</a></dt>
  -		<dt>5.14. <a href="#quake3">You LFSers play Quake?!?</a></dt>
  -	</dl>
  -
  +<h4><a href="#frb">Frequently Reported Bugs</a></h4>
   <ul>
  -	<li id="alpha-fixes">
  -		<ul>
  -			<li><h5>5.1. Is there information about LFS on the Alpha?</h5></li>
  -			<li>
  -				 <p>Kelledin maintains a list of fixes for building on the Alpha platform at <a href="http://skarpsey.dyndns.org/alpha-lfs/alpha.html">http://skarpsey.dyndns.org/alpha-lfs/alpha.html</a>.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="where-lfs-packages">
  -		<ul>
  -			<li><h5>5.2. Where are the lfs-packages tarballs or wget scripts?</h5></li>
  -			<li>
  -				 <p>For bandwidth reasons, the lfs-packages tarball is no longer available on the LFS server. There are alternative download methods, listed at <a href="http://test.linuxfromscratch.org/lfs/packages.html">http://test.linuxfromscratch.org/lfs/packages.html</a>.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="how-to-find">
  -		<ul>
  -			<li><h5>5.3. How do I find a package or command?</h5></li>
  -			<li>
  -				<p>Mostly, it's not hard, but some things can lead quite a chase. Besides the tips mentioned at <a href="http://test.linuxfromscratch.org/lfs/packages.html">http://test.linuxfromscratch.org/lfs/packages.html</a> try the following:</p>
  -				<p>To get a command, you must know what package it's from. Sometimes this is obvious; when it's not, a search on either <a href="http://www.debian.org/distrib/packages#search_contents">http://www.debian.org/distrib/packages#search_contents</a>  or <a href="http://www.rpmfind.net/" >http://www.rpmfind.net</a> will usually  provide the answer.</p>
  -				<p>Once you know the package, searching <a href="http://freshmeat.net/">http://freshmeat.net/</a> for <code>foo</code> will usually turn up a freshmeat page with links to an URL which may have newer releases not reported to freshmeat.</p>
  -				<p>Searching <a href="http://www.google.com/">http://www.google.com/</a> for <code>+foo +index +lsm</code>tends to find directory listings with an LSM (Linux Software Map) file. The LSM file will list an official distribution point which is likelier to have the most recent version or at least a more recent LSM file which will list an even more recent distribution point.</p>
  -				<p>If the search results are clogged with links to RPM packages and Debian's archives, try <code>+foo +index +lsm -RPM -debian</code>.</p>
  -				<p>If there are too few results try dropping the "+lsm" and "+index".</p>
  -				<p>Hits on <a href="http://www.ibiblio.org/">http://www.ibiblio.org/</a> are often good. To find them specifically, use <code>foo site:ibiblio.org</code>. If the latest release is old, Debian or an SRPM may have helpful patches, and there may be a modern replacement for the package which a freshmeat search will likely find.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="kernel-modules">
  -		<ul>
  -			<li><h5>5.4. How do I compile a kernel or set up modules?</h5></li>
  -			<li>
  -				 <p>In addition to the kernel documentation at <a href="file:///usr/src/linux/Documentation">/usr/src/linux/Documentation</a> or wherever you unpacked your kernel source and the help in kernel config tool (make menuconfig), see the Module-HOWTO at <a href="http://www.tldp.org/HOWTO/Module-HOWTO/">http://www.tldp.org/HOWTO/Module-HOWTO/</a>, and the Kernel-HOWTO at <a href="http://www.tldp.org/HOWTO/Kernel-HOWTO/">http://www.tldp.org/HOWTO/Kernel-HOWTO/</a>.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="what-dist">
  -		<ul>
  -			<li><h5>5.5. What distribution should I use to start from?</h5></li>
  -			<li>
  -				 <p>Any recent distribution should be fine. If you have problems, try installing and/or updating the development packages. (Look for ones starting in "gcc", "glibc", or "libstdc++" or ending in "-dev".). If you want to make use LFS as your main system and you wish to install it without first installing a distribution, try <a href="http://www.knopper.net/knoppix/index-en.html">Knoppix</a> or <a href="http://test.linuxfromscratch.org/lfs/packages.html">an LFS boot cd</a>.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="wheres-which">
  -		<ul>
  -			<li><h5>5.6. Where's which?</h5></li>
  -			<li>
  -				 <p><a href="http://beyond.linuxfromscratch.org/view/cvs/general/which.html">http://beyond.linuxfromscratch.org/view/cvs/general/which.html</a></p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="portmap">
  -		<ul>
  -			<li><h5>5.7. Where's portmap?</h5></li>
  -			<li>
  -				<p>There are instructions in the NFS Hint at <a href="http://hints.linuxfromscratch.org/hints/nfs.txt">http://hints.linuxfromscratch.org/hints/nfs.txt</a>.</p>
  -				<p>Also, Marc Heerdink writes:</p>
  -				<blockquote><p>I have a version of tcp_wrappers and portmap up that have both been patched with the debian patches, adapted Makefiles for LFS plus all compile warnings/problems were fixed. Additionally, an lfs-install.sh is included in both tarballs that provides a really quick and dirty way to install them. They can be found at <a href="http://www.linuxfromscratch.org/%7Egimli/">http://www.linuxfromscratch.org/~gimli/</a>. You may want to add a note about these packages for people who want to do it the easy way :)</p></blockquote>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="where-ncurses-mandrake">
  -		<ul>
  -			<li><h5>5.8. Where's libncurses.a in Mandrake?</h5></li>
  -			<li>
  -				 <p>In Mandrake/RPMS2/libncurses5-devel-5.2-16mdk.1586.rpm on Disk 2. Version numbers might be a little different for you. (If you're missing libcurses.a (no "n"), reread the book's instructions for bash more carefully.)</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="bootcd">
  -		<ul>
  -			<li><h5>5.9. How do I make a bootable CD?</h5></li>
  -			<li>
  -				<p>There are several Hints in the Booting section at <a href="http://hints.linuxfromscratch.org/hints.shtml#booting">http://hints.linuxfromscratch.org/hints.shtml#booting</a>.</p>
  -				<p>There are also ISO images at <a href="http://www.stockwith.co.uk/iso/">http://www.stockwith.co.uk/iso/</a> and <a href="http://pogostick.net/%7Eperam/lfs/">http://pogostick.net/~peram/lfs/</a>.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="really-small">
  -		<ul>
  -			<li><h5>5.10. How do I make that really small install the book mentions?</h5></li>
  -			<li>
  -				 <p>Gerard describes the process of making a 5MB LFS install in <a href="http://www.linuxfromscratch.org/pipermail/lfs-support/2001-October/000202.html">an email to lfs-support</a>,  and there are links to many resources in <a href="http://www.linuxfromscratch.org/pipermail/lfs-support/2002-June/007255.html">a post by Cor Lem</a> and a reply to it.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="cross-compile">
  -		<ul>
  -			<li><h5>5.11. How do I cross compile LFS?</h5></li>
  -			<li>
  -				 <p>It's often useful to compile LFS for one machine on another machine. Say using that fast 1Ghz Athlon to build an install for an old 486. While this is technically not cross compiling, binaries compiled for the Athlon cannot be run on the 486 because binaries compiled for the newer processor use features the older processor doesn't have. To make the newer system compile for the older, follow the hint at <a href="http://hints.linuxfromscratch.org/hints/crosscompiling-x86.txt">http://hints.linuxfromscratch.org/hints/crosscompiling-x86.txt</a>.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="old-sources">
  -		<ul>
  -			<li><h5>5.12. I'm having trouble compiling something really old.</h5></li>
  -			<li>
  -				<p>There's a few things that don't require much knowledge of C that you can do to get old sources to compile on a recent system.</p>
  -				<p>If you're using GCC 3, try adding the -std=gnu89 switch to the compile options. (For instance, in CFLAGS or CC. The exact method is a bit beyond the scope of this FAQ.)</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="lfs-logos">
  -		<ul>
  -			<li><h5>5.13. Where can I get LFS Logos?</h5></li>
  -			<li>
  -				 <ul>
  -					<li><a href="http://linuxfromscratch.org/%7Egerard/lfslogos/"  >http://linuxfromscratch.org/~gerard/lfslogos/</a></li>
  -					<li><a href="http://files.ichilton.co.uk/oldlfslogos/">http://files.ichilton.co.uk/oldlfslogos/</a></li>
  -				</ul>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="quake3">
  -		<ul>
  -			<li><h5>5.14. You LFSers play Quake?!?</h5></li>
  -			<li>
  -				 <p>Glad you asked ;) Ian Molton in the UK runs a Quake server for LFS users. Here are details:</p>
  -				<ul>
  -					<li>Players need the latest Quake 3 release. As of February, 2003, this is 1.32b from <a href="ftp://ftp.idsoftware.com/idstuff/quake3/linux/linuxq3apoint-1.32b.x86.run">ftp://ftp.idsoftware.com/idstuff/quake3/linux/linuxq3apoint-1.32b.x86.run</a></li>
  -					<li>Players need the pak0.pk3 file from the full game of Quake 3. This is available on the Quake 3 CD (even the MS Windows version). It goes in /usr/local/games/quake3/baseq3/ unless you installed Quake 3 somewhere else.</li>
  -					<li>Players need the add on maps used in the server which they can get from <a href="http://games.mnementh.co.uk/">http://games.mnementh.co.uk/</a> and install in ~/.q3a/baseq3/ or where ever the pak0.pk3 file is. Downloading the maps manually is absolutely necessary because the server has automatic map downloading disabled.</li>
  -					<li>For the same reason that automatic map downloading is disabled, please don't download from the web while a game is in progress.</li>
  -					<li>Although the server is only guarenteed to be running when games are scheduled, players may connect to the server for testing whenever they like.</li>
  -					<li>Games are held every week on Tuesday at 20:00 UTC and on Saturday at 22:00 UTC. Note that those times are in UTC.</li>
  -					<li>Because the server is only for LFS users, and Ian would like to avoid setting a password, the server id is recorded only in the lfs-chat archives.</li>
  -					<li>If you've created an entry for the server in your "favorites" but it's not showing up, you may have "Show empty servers" turned off.</li>
  -				</ul>
  -			</li>
  -		</ul>
  -	</li>
  +	<li><a href="#wrong-ln-s-command">The "ln -s" commands in the Book are wrong.</a></li>
  +	<li><a href="#its-hardlink-not-copy">/bin/foo is a copy of /bin/bar.</a></li>
  +	<li><a href="#why-not-version">Can I use a version newer than the one in the Book?</a></li>
  +	<li><a href="#new-version">There's a new version of package Foo.</a></li>
  +	<li><a href="#delete_key_not_work">The Delete key doesn't work.</a></li>
  +	<li><a href="#shutdown-on-fsck-error">The system shuts down when fsck errors out!</a></li>
  +	<li><a href="#missing-fm-project">The freshmeat project page doesn't exist.</a></li>
   </ul>
   
  -<h3 id="fsc">6. Frequently Sought Cluebits</h3>
  -	<dl>
  -		<dt>6.1. <a href="#dos-text">What's a DOS format text file?</a></dt>
  -		<dt>6.2. <a href="#how-to-compile">How do i compile a package?</a></dt>
  -		<dt>6.3. <a href="#should-i-keep-sources">Do I need to keep the source after installing?</a></dt>
  -		<dt>6.4. <a href="#no-dev-eth0">Where is /dev/eth0?</a></dt>
  -		<dt>6.5. <a href="#no-poweroff">How do I make my machine poweroff when shut down?</a></dt>
  -		<dt>6.6. <a href="#how-to-create-user">How do I create a non-root user?</a></dt>
  -		<dt>6.7. <a href="#kernel-header-copy">Why copy the kernel headers instead of linking them?</a></dt>
  -		<dt>6.8. <a href="#gcc-warnings">Are compiler warnings from GCC bad?</a></dt>
  -		<dt>6.9. <a href="#how-to-print">How do I print?</a></dt>
  -		<dt>6.10. <a href="#konsole-ps1">How do I set PS1 in Konsole?</a></dt>
  -	</dl>
  -
  -<ul>
  -	<li id="dos-text">
  -		<ul>
  -			<li><h5>6.1. What's a DOS format text file?</h5></li>
  -			<li>
  -				<p>It has to do with the characters used to end lines.</p>
  -				<p>There are two that may be used:</p>
  -				<ul>
  -					<li>Line Feed: (LF) Octal:012 Decimal:10 Hex:0A C Style Escape:'\n' Moves down one line.</li>
  -					<li>Carriage Return: (CR) Octal:015 Decimal:13 Hex:0D C Style Excape:'\r' Move to the left margin.</li>
  -				</ul>
  -				<p>Unix, DOS, and MacOS each use a different combination to end lines in text files:</p>
  -				<ul>
  -					<li>Unix: LF only. This is why when a Unix format text file is sent to a printer raw, it prints out<br />
  -					  like<br />
  -					    stairs<br />
  -					      steps.<br /></li>
  -					<li>DOS: CRLF both. Which is why if you do "cat -v" on a DOS file you'll see a "^M" (control m is carriage return) at the end of each line. And that is why scripts don't work when written with Microsoft Notepad. The kernel looks for "/bin/sh^M" which doesn't exist. There's a "/bin/sh", but nothing with a "^M" appended.</li>
  -					<li>MacOs: CR only. Printers probably print every line atop the first, and Unix tools think the whole file is one line with "^M" all through it.</li>
  -				</ul>
  -				<p>To change DOS to Unix, use</p>
  -				<ul class="code">
  -					<li>cp <fileid> <fileid>.dos &&</li>
  -					<li>cat <fileid>.dos | tr -d '\r' > <fileid></li>
  -				</ul>
  -				<p>Other conversions will probably require sed or a different use of tr and are left as an exercise for the reader.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="how-to-compile">
  -		<ul>
  -			<li><h5>6.2. How do i compile a package?</h5></li>
  -			<li>
  -				 <p>Here's an example when everything works:</p>
  -				 <ul class="code">
  -					<li>tar xvjf foo-0.0.tar.bz2</li>
  -					<li>cd foo-0.0</li>
  -					<li>./configure --prefix=/usr</li>
  -					<li>make</li>
  -					<li>make install</li>
  -					<li>cd ..</li>
  -					<li>rm -rf foo-0.0</li>
  -				</ul>
  -				<p>Deleting the source at the end is important. The source is only useful for reinstalling without recompiling because "make clean" and friends are not reliable. See the next example for what to do if "./configure" or "make" fail.</p>
  -				<p>The only exception to deleting the source is the Linux Kernel. Most people keep their kernel source so they don't have to reconfigure it from scratch if they need to make a small change. If a large change is needed, like changing processor type, it may be necessary to delete and re-extract even with the kernel.</p>
  -				<p>And here's an example for if something (in this case configure) fails:</p>
  -				<ul class="code">
  -					<li>tar xvjf foo-0.0.tar.bz2</li>
  -					<li>cd foo-0.0</li>
  -					<li>./configure --prefix=/usr</li>
  -					<li>...</li>
  -					<li>*** configure: error: foo requires libess 4.2 or greater</li>
  -					<li>please install libess and rerun configure.</li>
  -					<li>cd ..</li>
  -					<li>rm -rf foo-0.0</li>
  -					<li>tar xvjf libess-4.2.tar.bz2</li>
  -					<li>cd libess-4.2</li>
  -					<li>./configure --prefix=/usr</li>
  -					<li>make</li>
  -					<li>make install</li>
  -					<li>cd ..</li>
  -					<li>rm -rf libess-4.2</li>
  -					<li>tar xvjf foo-0.0.tar.bz2</li>
  -					<li>cd foo-0.0</li>
  -					<li>./configure --prefix=/usr</li>
  -					<li>make</li>
  -					<li>make install</li>
  -					<li>cd ..</li>
  -					<li>rm -rf foo-0.0</li>
  -				</ul>
  -				<p>Ed. Note: The id of the fictional libess above follows libiberty (from glibc, AFAIK) and libofat. The reason comes from the gcc flag, -l, for linking a library when compiling. For instance, <code>gcc -o foo foo.c -lm</code> would link the "m" (math) library with the executable foo. So, for the libraries above, the command looks like:<code>gcc -o foo foo.c -liberty -lowfat -less</code>.Bonus points if you caught the reference to The Hitchhiker's Guide to the Galaxy, by Douglas Adams in the example.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="should-i-keep-sources">
  -		<ul>
  -			<li><h5>6.3. Do I need to keep the source after installing?</h5></li>
  -			<li>
  -				 <p>No, but see "<a href="#how-to-compile">How do i compile a package?</a>" for the details including an exception to that rule.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="no-dev-eth0">
  -		<ul>
  -			<li><h5>6.4. Where is /dev/eth0?</h5></li>
  -			<li>
  -				 <p>It isn't a real file. It exists in some kernel idspace. (And yes, you're not the first person to think that network devices should be real files just like everything else.)</p>
  -				 <p>Also see <a href="#eth0-unknown-interface">#eth0-unknown-interface</a> if you're getting errors about eth0.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="no-poweroff">
  -		<ul>
  -			<li><h5>6.5. How do I make my machine poweroff when shut down?</h5></li>
  -			<li>
  -				 <p>Power Management is a kernel function, you need to enable it in the kernel. In the "General Setup" section of "make menuconfig", look for "Power Management Support" and read the help.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="how-to-create-user">
  -		<ul>
  -			<li><h5>6.6. How do I create a non-root user?</h5></li>
  -			<li>
  -				 <p>Use the useradd program. It was installed with the shadow package and has many useful options. See the useradd man page for more information.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="kernel-header-copy">
  -		<ul>
  -			<li><h5>6.7. Why copy the kernel headers instead of linking them?</h5></li>
  -			<li>
  -				<p>In short, we copy the kernel headers instead of linking them because the kernel headers should match the currently running libc, not the currently running kernel.</p>
  -				<p>For the long answer see these:</p>
  - 				<ul>
  -	 				<li>A post by Linus himself: <a href="http://www.uwsg.iu.edu/hypermail/linux/kernel/0007.3/0587.html">http://www.uwsg.iu.edu/hypermail/linux/kernel/0007.3/0587.html</a>.</li>
  -					<li>Kernel Traffic #80, 4. Symlinks In The Kernel; Kernel/Library/etc Interface Dispute: <a href="http://kt.zork.net/kernel-traffic/kt20000814_80.txt">http://kt.zork.net/kernel-traffic/kt20000814_80.txt</a>  (This covers the thread in which the above  post occurred.)</li>
  -				</ul>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="gcc-warnings">
  -		<ul>
  -			<li><h5>6.8. Are compiler warnings from GCC bad?</h5></li>
  -			<li>
  -				<p>Short answer: no.</p>
  -				<p>Long answer: probably, but only to someone working on the package you're trying to compile. Mostly, everything will be fine unless make quits with an error.</p>
  -				<p>Here's an example:</p>
  - 				<ul class="code">
  -					<li>sk ~/tmp $ cat > Makefile</li>
  -					<li>main:</li>
  -					<li>gcc main.c</li>
  -					<li>sk ~/tmp $ cat > main.c</li>
  -					<li>void main() { exit(0); }</li>
  -					<li>sk ~/tmp $ make</li>
  -					<li>gcc main.c</li>
  -					<li><strong>main.c: In function `main':</strong></li>
  -					<li><strong>main.c:1: warning: return type of `main' is not `int'</strong></li>
  -					<li>sk ~/tmp $ ######## that worked ########</li>
  -					<li>sk ~/tmp $</li>
  -					<li>sk ~/tmp $ cat > main.c</li>
  -					<li>int main() { e<span class="strong">xx</span>it(0) }</li>
  -					<li>sk ~/tmp $ make</li>
  -					<li>gcc main.c</li>
  -					<li><strong>main.c: In function `main':</strong></li>
  -					<li><strong>main.c:1: parse error before `}'</strong></li>
  -					<li><strong>make: *** [main] Error 1</strong></li>
  -					<li>sk ~/tmp $ ######## that failed ########</li>
  -					<li>sk ~/tmp $</li>
  -				</ul>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="how-to-print">
  -		<ul>
  -			<li><h5>6.9. How do I print?</h5></li>
  -			<li>
  -				<p>See <a href="http://hints.linuxfromscratch.org/hints.shtml#printing">one of the various printing hints</a></p>
  -				<p>Before you try any of the advanced printer daemons (for example CUPS) make sure your printer works by following <a href="http://hints.linuxfromscratch.org/hints/pfs.txt">the Printing From Scratch hint</a>. For most people, this hint is all that is required to setup basic printing. </p>
  -			</li>
  -		</ul>
  -	</li>
  -    <li id="konsole-ps1">
  -        <ul>
  -            <li><h5>6.10. How do I set PS1 in Konsole?</h5></li>
  -            <li>   
  -                <p>Follow the instructions in <a href="http://beyond.linuxfromscratch.org/view/cvs/postlfs/profile.html">the
  -BLFS page about profile</a> to properly setup your enviroment.</p>
  -                <p>Alternatively, you can try the following solutions:</p>
  -                <p>Start konsole as a login shell:</p>
  -                <code>konsole --ls</code>
  -                <p>Change the session in Konsole to start <code>/bin/bash --login</code> instead of
  -<code>/bin/bash</code>.</p>
  -            </li>   
  -        </ul>
  -    </li>
  -</ul>
  +<h4 id="intro">General information about these FAQ's</h4>
   
  -<h3 id="fee">7. Frequently Encountered Errors</h3>
  -	<dl>
  -	<dt>7.1. <a href="#fee-anytime">Errors Seen at Any Time</a></dt>
  -	<dd>
  -		<dl>
  -			<dt>7.1.1. <a href="#any-no-such-file">No such file or directory</a></dt>
  -		</dl>
  -	</dd>
  -	<dt>7.2. <a href="#fee-compile">Compile Time Errors</a></dt>
  -	<dd>
  -		<dl>
  -			<dt>7.2.1. <a href="#fee-compile-any">Compile Time Errors From Any Package</a></dt>
  -			<dd>
  -				<dl>
  -					<dt>7.2.1.1. <a href="#undefined-deflate">undefined reference to `deflate'</a></dt>
  -					<dt>7.2.1.2. <a href="#configure-no-such-file">bash: ./configure: No such file or directory</a></dt>
  -					<dt>7.2.1.3. <a href="#bad-interpreter-permission-denied">./configure: bad interpreter: Permission denied</a></dt>
  -					<dt>7.2.1.4. <a href="#conf-guess-fail">configure can't guess my host type.</a></dt>
  -					<dt>7.2.1.5. <a href="#config-not-gnu-c">checking whether we are using GNU C... no</a></dt>
  -					<dt>7.2.1.6. <a href="#config-hang-size_t">Why does configure hang at "checking for signed size_t type..."?</a></dt>
  -					<dt>7.2.1.7. <a href="#perm-denied">I'm getting `/dev/null: Permission denied'</a></dt>
  -					<dt>7.2.1.8. <a href="#sig11">signal 11 (internal error: Segmentation fault)</a></dt>
  -					<dt>7.2.1.9. <a href="#gtk-2_0">I'm getting errors building a package that requires GTK+, but I've installed GTK+ 2.x.</a></dt>
  -					<dt>7.2.1.10. <a href="#missing-x-includes">X11/Xlib.h: No such file or directory</a></dt>
  -					<dt>7.2.1.11. <a href="#gnome-versions">Any error while building part of Gnome</a></dt>
  -					<dt>7.2.1.12. <a href="#cannot-find-lc">ld: cannot find -lc</a></dt>
  -				</dl>
  -			</dd>
  -			<dt>7.2.2. <a href="#fee-compile-specific">Compile Time Errors From Specific Packages</a></dt>
  -			<dd>
  -				<dl>
  -					<dt>7.2.2.1. <a href="#conflicting-gethostname">conflicting types for `gethostname'</a></dt>
  -					<dt>7.2.2.2. <a href="#yytext_ptr-undeclared">"lex.l:429: `yytext_ptr' undeclared" while building modutils</a></dt>
  -					<dt>7.2.2.3. <a href="#xfree-png-lz">undefined reference to `deflate'</a></dt>
  -					<dt>7.2.2.4. <a href="#no-linuxthreads">Glibc fails with ". . . . it is normal to compile GNU libc with the `linuxthreads' add-on. . . ."</a></dt>
  -					<dt>7.2.2.5. <a href="#perl-missing-separator">Perl fails with "*** missing separator. Stop."</a></dt>
  -					<dt>7.2.2.6. <a href="#unknown-pseudo-op-hidden">Error: Unknown pseudo-op: `.hidden'</a></dt>
  -					<dt>7.2.2.7. <a href="#optimized-glibc-fail">My optimized build of glibc is failing in spinlock.c</a></dt>
  -					<dt>7.2.2.8. <a href="#asm-global-directive">Glibc fails with "cannot determine asm global directive".</a></dt>
  -					<dt>7.2.2.9. <a href="#glibc-awk-fail">Glibc fails and mentions BEGIN and END.</a></dt>
  -					<dt>7.2.2.10. <a href="#glibc-no-ld_map">Glibc fails with "ld.map: No such file or directory".</a></dt>
  -					<dt>7.2.2.11. <a href="#sh-utils-getloadavg">My static sh-utils build is failing with "undefined reference to `getloadavg'".</a></dt>
  -					<dt>7.2.2.12. <a href="#cpp-fails-sanity-check">C++ preprocessor "/lib/cpp" fails sanity check</a></dt>
  -				</dl> 
  -			</dd>
  -					<dt>7.2.3. <a href="#fee-compile-notlisted">Compile Time Errors Not Listed Above</a></dt>
  -					<dd>
  -						<dl>
  -							<dt>7.2.3.1. <a href="#gnu-patches">I used a patch from GNU to upgrade. Is that OK?</a></dt>
  -							<dt>7.2.3.2. <a href="#optimizations">When using optimization flags (setting CFLAGS)</a></dt>
  -							<dt>7.2.3.3. <a href="#version-not-in-book">I'm using a version not in the book. Is that a problem?</a></dt>
  -							<dt>7.2.3.4. <a href="#dirty-sources">I didn't delete the source tree after my last attempt. Do I need to?</a></dt>
  -						</dl>
  -					</dd>
  -				</dl>
  -			</dd>
  -		<dt>7.3. <a href="#fee-runtime">Run Time Errors</a></dt>
  +<dl>
  +	<dt id="why-faq">Why this FAQ?</dt>
   		<dd>
  -			<dl>
  -				<dt>7.3.1. <a href="#net-pf-x">I'm getting errors about net-pf-?.</a></dt>
  -				<dt>7.3.2. <a href="#char-major-10-135">modprobe: Can't locate module char-major-10-135</a></dt>
  -				<dt>7.3.3. <a href="#no-dev-rtc">modprobe: Can't locate module /dev/rtc</a></dt>
  -				<dt>7.3.4. <a href="#unable-to-mount-root">Kernel panic: VFS: unable to mount root fs</a></dt>
  -				<dt>7.3.5. <a href="#respawning-too-fast">init: Id "1" respawning too fast: disabled for 5 minutes</a></dt>
  -				<dt>7.3.6. <a href="#lilo-errors">What do those LILO errors mean?</a></dt>
  -				<dt>7.3.7. <a href="#f-hostname">My hostname is getting set to "-f"!</a></dt>
  -				<dt>7.3.8. <a href="#less-prints-ad">Why does less (and therefore man) print <AD> instead of hyphens?</a></dt>
  -				<dt>7.3.9. <a href="#eth0-unknown-interface">eth0:unknown interface</a></dt>
  -				<dt>7.3.10. <a href="#spurious-8259A-interrupt">spurious 8259A interrupt: IRQ14</a></dt>
  -			</dl>
  +			<p>The FAQ tries to answer questions before they're asked. This saves the trouble of asking them, and sometimes, the trouble of encountering a problem.</p>
  +			<p>This does reduce traffic and improve the signal to noise ratio but that is merely a useful side effect.</p>
  +			<p>Since the FAQ isn't the natural place to look for information, items should be added to it only if they can't be added to the appropriate documentation. Sometimes it will be necessary to add a pointer to the information in the documentation.</p>
   		</dd>
  -	</dl>
  -
  -<h4 id="fee-anytime">7.1. Errors Seen at Any Time</h4>
  -	<dl>
  -		<dt>7.1.1. <a href="#any-no-such-file">No such file or directory</a></dt>
  -	</dl>
  -<ul>
  -	<li id="any-no-such-file">
  -		<ul>
  -			<li><h5>7.1.1. No such file or directory</h5></li>
  -			<li>
  -				<p>Examples of this error are:</p>
  -				<ul class="code">
  -					<li>/usr/bin/env: /static/bin/bash: No such file or directory</li>
  -					<li>gcc: No such file or directory</li>
  -				</ul>
  -				<p>They usually occur when trying to enter (or shortly after entering) chroot in Chapter 6, and are caused by trying to run a dynamically linked binary at that point. You can check by running file on the binary. For example:<code>file $LFS/static/bin/bash</code>.</p>
  -				<p>If it doesn't say something about "statically linked", there is a problem.</p>
  -				<p>The solution is to go back to Chapter 5, delete and re-extract the source if you haven't already, and recompile the affected package. And this time, take extra care with the instructions for compiling it statically.</p>
  -			</li>
  -		</ul>
  -	</li>
  -</ul>
  -
  -<h4 id="fee-compile">7.2. Compile Time Errors</h4>
  -	<dl>
  -		<dt>7.2.1. <a href="#fee-compile-any">Compile Time Errors From Any Package</a></dt>
  -			<dd>
  -				<dl>
  -					<dt>7.2.1.1. <a href="#undefined-deflate">undefined reference to `deflate'</a></dt>
  -					<dt>7.2.1.2. <a href="#configure-no-such-file">bash: ./configure: No such file or directory</a></dt>
  -					<dt>7.2.1.3. <a href="#bad-interpreter-permission-denied">./configure: bad interpreter: Permission denied</a></dt>
  -					<dt>7.2.1.4. <a href="#conf-guess-fail">configure can't guess my host type.</a></dt>
  -					<dt>7.2.1.5. <a href="#config-not-gnu-c">checking whether we are using GNU C... no</a></dt>
  -					<dt>7.2.1.6. <a href="#config-hang-size_t">Why does configure hang at "checking for signed size_t type..."?</a></dt>
  -					<dt>7.2.1.7. <a href="#perm-denied">I'm getting `/dev/null: Permission denied'</a></dt>
  -					<dt>7.2.1.8. <a href="#sig11">signal 11 (internal error: Segmentation fault)</a></dt>
  -					<dt>7.2.1.9. <a href="#gtk-2_0">I'm getting errors building a package that requires GTK+, but I've installed GTK+ 2.x.</a></dt>
  -					<dt>7.2.1.10. <a href="#missing-x-includes">X11/Xlib.h: No such file or directory</a></dt>
  -					<dt>7.2.1.11. <a href="#gnome-versions">Any error while building part of Gnome</a></dt>
  -					<dt>7.2.1.12. <a href="#cannot-find-lc">ld: cannot find -lc</a></dt>
  -				</dl>
  -			</dd>
  - 		<dt>7.2.2. <a href="#fee-compile-specific">Compile Time Errors From Specific Packages</a></dt>
  - 			<dd>
  -				<dl>
  -					<dt>7.2.2.1. <a href="#conflicting-gethostname">conflicting types for `gethostname'</a></dt>
  -					<dt>7.2.2.2. <a href="#yytext_ptr-undeclared">"lex.l:429: `yytext_ptr' undeclared" while building modutils</a></dt>
  -					<dt>7.2.2.3. <a href="#xfree-png-lz">undefined reference to `deflate'</a></dt>
  -					<dt>7.2.2.4. <a href="#no-linuxthreads">Glibc fails with ". . . . it is normal to compile GNU libc with the `linuxthreads' add-on. . . ."</a></dt>
  -					<dt>7.2.2.5. <a href="#perl-missing-separator">Perl fails with "*** missing separator. Stop."</a></dt>
  -					<dt>7.2.2.6. <a href="#unknown-pseudo-op-hidden">Error: Unknown pseudo-op: `.hidden'</a></dt>
  -					<dt>7.2.2.7. <a href="#optimized-glibc-fail">My optimized build of glibc is failing in spinlock.c</a></dt>
  -					<dt>7.2.2.8. <a href="#asm-global-directive">Glibc fails with "cannot determine asm global directive".</a></dt>
  -					<dt>7.2.2.9. <a href="#glibc-awk-fail">Glibc fails and mentions BEGIN and END.</a></dt>
  -					<dt>7.2.2.10. <a href="#glibc-no-ld_map">Glibc fails with "ld.map: No such file or directory".</a></dt>
  -					<dt>7.2.2.11. <a href="#sh-utils-getloadavg">My static sh-utils build is failing with "undefined reference to `getloadavg'".</a></dt>
  -					<dt>7.2.2.12. <a href="#cpp-fails-sanity-check">C++ preprocessor "/lib/cpp" fails sanity check</a></dt>
  -				</dl>
  -			</dd>
  -		<dt>7.2.3. <a href="#fee-compile-notlisted">Compile Time Errors Not Listed Above</a></dt>
  -			<dd>
  -				<dl>
  -					<dt>7.2.3.1. <a href="#gnu-patches">I used a patch from GNU to upgrade. Is that OK?</a></dt>
  -					<dt>7.2.3.2. <a href="#optimizations">When using optimization flags (setting CFLAGS)</a></dt>
  -					<dt>7.2.3.3. <a href="#version-not-in-book">I'm using a version not in the book. Is that a problem?</a></dt>
  -					<dt>7.2.3.4. <a href="#dirty-sources">I didn't delete the source tree after my last attempt. Do I need to?</a></dt>
  -				</dl>
  -			</dd>
  -	</dl>
  -
  -
  -<h5 id="fee-compile-any">7.2.1. Compile Time Errors From Any Package</h5>
  -	<dl>
  -		<dt>7.2.1.1. <a href="#undefined-deflate">undefined reference to `deflate'</a></dt>
  -		<dt>7.2.1.2. <a href="#configure-no-such-file">bash: ./configure: No such file or directory</a></dt>
  -		<dt>7.2.1.3. <a href="#bad-interpreter-permission-denied">./configure: bad interpreter: Permission denied</a></dt>
  -		<dt>7.2.1.4. <a href="#conf-guess-fail">configure can't guess my host type.</a></dt>
  -		<dt>7.2.1.5. <a href="#config-not-gnu-c">checking whether we are using GNU C... no</a></dt>
  -		<dt>7.2.1.6. <a href="#config-hang-size_t">Why does configure hang at "checking for signed size_t type..."?</a></dt>
  -		<dt>7.2.1.7. <a href="#perm-denied">I'm getting `/dev/null: Permission denied'</a></dt>
  -		<dt>7.2.1.8. <a href="#sig11">signal 11 (internal error: Segmentation fault)</a></dt>
  -		<dt>7.2.1.9. <a href="#gtk-2_0">I'm getting errors building a package that requires GTK+, but I've installed GTK+ 2.x.</a></dt>
  -		<dt>7.2.1.10. <a href="#missing-x-includes">X11/Xlib.h: No such file or directory</a></dt>
  -		<dt>7.2.1.11. <a href="#gnome-versions">Any error while building part of Gnome</a></dt>
  -		<dt>7.2.1.12. <a href="#cannot-find-lc">ld: cannot find -lc</a></dt>
  -
  -	</dl>
  -
  -
  -<ul>
  -	<li id="undefined-deflate">
  -		<ul>
  -			<li><h5>7.2.1.1. undefined reference to `deflate'</h5></li>
  -			<li>
  -				<p>If, when compiling XFree86, ghostscript, or anything else that uses libpng, you get an error including the following line:<code>/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2/../../../libpng.so: undefined reference to `deflate'</code>.</p>
  -				<p>Then rebuild libpng with the patch at <a href="http://www.linuxfromscratch.org/%7Esklein/libpng-1.2.5-lz.patch">http://www.linuxfromscratch.org/~sklein/libpng-1.2.5-lz.patch</a>.  Make sure you apply the patch immediately after  unpacking the sources. Like this:</p>
  -				<ul class="code">
  -					<li>tar --no-same-owner -xvjf libpng-1.2.5.tar.bz2</li>
  -					<li>cd libpng-1.2.5</li>
  -					<li>cat ../libpng-1.2.5-lz.patch | patch -p0</li>
  -					<li>ln -s scripts/makefile.linux Makefile</li>
  -					<li>make ZLIBLIB=/lib ZLIBINC=/usr/include</li>
  -					<li>make ZLIBLIB=/lib ZLIBINC=/usr/include install</li>
  -					<li>cd ..</li>
  -					<li>rm -r libpng-1.2.5</li>
  -				</ul>
  -				<p>Needless to say, if you originally put zlib in /usr/local or did something else different, you'll have to adjust those instructions accordingly.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="configure-no-such-file">
  -		<ul>
  -			<li><h5>7.2.1.2. bash: ./configure: No such file or directory</h5></li>
  -			<li>
  -				 <p>See the entry: <a href="#how-to-compile">"How do I compile a package?"</a></p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="bad-interpreter-permission-denied">
  -		<ul>
  -			<li><h5>7.2.1.3. ./configure: bad interpreter: Permission denied</h5></li>
  -			<li>
  -				<p>You're most likely getting this while building bash in Chapter 5 of the LFS Book. The problem is most likely your mount options. You probably have a line in /etc/fstab like:</p>
  -				<code>/dev/hda10  /mnt/lfs  ext2  user  1  2</code>
  -				<p>'user' is the mount flag, and it's the problem. To quote from the mount man page:</p>
  -				<blockquote><p>user:  Allow  an  ordinary  user to mount the file system. This  option  implies  the options noexec, nosuid, and nodev (unless overridden by subsequent options, as in the option line user,exec,dev,suid).</p></blockquote>
  - 				<p>So change the line in /etc/fstab like this:</p>
  -				<code>/dev/hda10  /mnt/lfs  ext2  defaults  1  2</code>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="conf-guess-fail">
  -		<ul>
  -			<li><h5>7.2.1.4. configure can't guess my host type.</h5></li>
  -			<li>
  -				<p>Typical symptoms look like this:</p>
  -				<ul class="code">
  -					<li>sk ~/tmp-0.0 $ ./configure</li>
  -					<li>creating cache ./config.cache</li>
  -					<li>checking host system type...</li>
  -					<li><strong>configure: error: can not guess host type; you must specify one</strong></li>
  -					<li>sk ~/tmp-0.0 $</li>
  -				</ul>
  -				<p>The problem is usually that the script can't run the compiler. Usually it's just a missing /usr/bin/cc symlink. You can fix it like this:</p>
  -				<code>cd /usr/bin && ln -s gcc cc</code>
  -				<p>If that doesn't do it, check the file config.log created by configure. Errors go there and may indicate the problem.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="config-not-gnu-c">
  -		<ul>
  -			<li><h5>7.2.1.5. checking whether we are using GNU C... no</h5></li>
  -			<li>
  -				 <p>If you're getting an error from configure like:</p>
  -				 <ul class="code">
  -					<li>checking whether we are using GNU C... no</li>
  -					<li>configure: error: GNU libc must be compiled using GNU CC</li>
  -				</ul>
  -				<p>It may be because egrep isn't working. Since egrep is a shell-script which calls grep,
  -this actually means there's a problem with grep.</p>
  -				<p>To test if grep is working <em>before</em> reinstalling the grep package in Chapter 6, run the following command from <em>outside</em> chroot:</p>
  -				<code>file $LFS/bin/grep</code>
  -				<p>If it doesn't say <code>statically linked</code> you have a problem and need to reinstall the grep package according to the instruction in chapter 5.</p>
  -				<p>To test if egrep is working <em>after</em> reinstalling the grep package in Chapter 6, run the following command from <em>inside</em> chroot:</p>
  -				<code>egrep root /etc/passwd</code>
  -				<p>If it doesn't print root's line from /etc/passwd, again, you have a problem. (This test also works if you encounter the problem after rebooting into the new LFS system.)</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="config-hang-size_t">
  -		<ul>
  -			<li><h5>7.2.1.6. Why does configure hang at "checking for signed size_t type..."?</h5></li>
  -			<li>
  -				 <p>You over optimized gcc.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="perm-denied">
  -		<ul>
  -			<li><h5>7.2.1.7. I'm getting `/dev/null: Permission denied'</h5></li>
  -			<li>
  -				<p>Does /dev/null look like this:</p>
  -				<ul class="code">
  -					<li>$ ls -l /dev/null</li>
  -					<li>crw-rw-rw- 1 root root 1, 3 Aug  3  2000 /dev/null</li>
  -				</ul>
  -				<p>If not, it should. See the chmod(1), chown(1), and mknod(1) man pages and /usr/src/linux/Documentation/devices.txt if you need help fixing it.</p>
  -				<p>If it does look right, the problem is probably your mount options. See the answer to "<a href="#bad-interpreter-permission-denied">./configure: bad interpreter: Permission denied</a>", above.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="sig11">
  -		<ul>
  -			<li><h5>7.2.1.8. signal 11 (internal error: Segmentation fault)</h5></li>
  -			<li>
  -				<p>The long answer is at <a href="http://www.bitwizard.nl/sig11/">http://www.bitwizard.nl/sig11/</a>.</p>
  -				<p>The short answer is that if restarting make gets a little further every time, you have a hardware problem. (If make, or whatever you're running, fails at the same place every time, then it is not hardware.)</p>
  -				<p>Assuming you're not overclocking, the most likely hardware problem is bad memory which you can check with Memtest86 from <a href="http://www.memtest86.com/">http://www.memtest86.com/</a>. If that isn't it, see the long answer.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="gtk-2_0">
  -		<ul>
  -			<li><h5>7.2.1.9. I'm getting errors building a package that requires GTK+, but I've installed GTK+ 2.x.</h5></li>
  -			<li>
  -				 <p>GTK+ 2.x and 1.2.x aren't compatible. The package you're installing may need GTK+ (and GLIB) 1.2.x. You can install GTK+ (and GLIB) 1.2.x next to 2.x.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="missing-x-includes">
  -		<ul>
  -			<li><h5>7.2.1.10. X11/Xlib.h: No such file or directory</h5></li>
  -			<li>
  -				<p>Typical symptoms look like this:</p>
  -				<ul class="code">
  -					<li>$ echo -en 'x11:\n\tgcc x11.c\n' > Makefile</li>
  -					<li>$ echo -en '#include <X11/Xlib.h>\nmain() { }\n' > x11.c</li>
  -					<li>$ make</li>
  -					<li>gcc x11.c</li>
  -					<li><strong>x11.c:1: X11/Xlib.h: No such file or directory</strong></li>
  -					<li><strong>make: *** [x11] Error 1</strong></li>
  -					<li>$ rm Makefile x11.c</li>
  -					<li>$</li>
  -				</ul>
  -				<p>Creating a couple symlinks will fix it. Here are the commands:</p>
  -				<ul class="code">
  -					<li>cd /usr</li>
  -					<li>ln -s X11R6 X11</li>
  -					<li>cd include</li>
  -					<li>ln -s ../X11/include/X11 X11</li>
  -				</ul>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="gnome-versions">
  -		<ul>
  -			<li><h5>7.2.1.11. Any error while building part of Gnome</h5></li>
  -			<li>
  -				<p>Using the latest version of every Gnome package doesn't work. You have to use versions that are known to work together.</p>
  -				<p>To find a list of such versions go to <a href="http://ftp.gnome.org/pub/GNOME/desktop/">http://ftp.gnome.org/pub/GNOME/desktop/</a>, drill down to the latest version , and use the versions there.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="cannot-find-lc">
  -		<ul>
  -			<li><h5>7.2.1.12. ld: cannot find -lc</h5></li>
  -			<li>
  -				<p>You get a message early in chapter 5 (LFS-4.1) or at the first pass of gcc (LFS CVS) which ends like this:</p>
  -					<ul class="code">
  -						<li>-static -o gengenrtl \ gengenrtl.o ../libiberty/libiberty.a</li>
  -						<li>ld: cannot find -lc</li>
  -						<li>collect2: ld returned 1 exit status</li>
  -					</ul>
  -				<p>Your host system is probably Mandrake 9 or higher. By default, its base system does not have a static C library (<code>/usr/lib/libc.a</code>) which is required for the static compilation of packages.</p> 
  -				<p>You need to install the glibc-static-devel RPM, which is on the third CD. You can verify the succesfull installation by verifying that /usr/lib/libc.a exists. If you're using LFS 4.1, check that everything in <code>$LFS/static/bin</code> is built static by using <code>file $LFS/static/bin/*</code>. If a package is not statically linked, reinstall it with the instructions from chapter 5.</p>
  -			</li>
  -		</ul>
  -	</li>
  -</ul>
  -
  -<h5 id="fee-compile-specific">7.2.2. Compile Time Errors From Specific Packages</h5>
  -	<dl>
  -		<dt>7.2.2.1. <a href="#conflicting-gethostname">conflicting types for `gethostname'</a></dt>
  -		<dt>7.2.2.2. <a href="#yytext_ptr-undeclared">"lex.l:429: `yytext_ptr' undeclared" while building modutils</a></dt>
  -		<dt>7.2.2.3. <a href="#xfree-png-lz">undefined reference to `deflate'</a></dt>
  -		<dt>7.2.2.4. <a href="#no-linuxthreads">Glibc fails with ". . . . it is normal to compile GNU libc with the `linuxthreads' add-on. . . ."</a></dt>
  -		<dt>7.2.2.5. <a href="#perl-missing-separator">Perl fails with "*** missing separator. Stop."</a></dt>
  -		<dt>7.2.2.6. <a href="#unknown-pseudo-op-hidden">Error: Unknown pseudo-op: `.hidden'</a></dt>
  -		<dt>7.2.2.7. <a href="#optimized-glibc-fail">My optimized build of glibc is failing in spinlock.c</a></dt>
  -		<dt>7.2.2.8. <a href="#asm-global-directive">Glibc fails with "cannot determine asm global directive".</a></dt>
  -		<dt>7.2.2.9. <a href="#glibc-awk-fail">Glibc fails and mentions BEGIN and END.</a></dt>
  -		<dt>7.2.2.10. <a href="#glibc-no-ld_map">Glibc fails with "ld.map: No such file or directory".</a></dt>
  -		<dt>7.2.2.11. <a href="#sh-utils-getloadavg">My static sh-utils build is failing with "undefined reference to `getloadavg'".</a></dt>
  -		<dt>7.2.2.12. <a href="#cpp-fails-sanity-check">C++ preprocessor "/lib/cpp" fails sanity check</a></dt>
  -	</dl>
  +	<dt id="what-is-lfs">What is LFS?</dt>
  +		<dd>
  +			<p>LFS stands for Linux From Scratch which is a project that aims to  teach you about the inner workings of Linux by building a Linux system by downloading, building, and installing the packages yourself.</p>
  +			<p>Also check out the <a href="../lfs/whatislfs.html">introduction to LFS</a> written by Gerard Beekmans, the project leader and initiator.</p>
  +		</dd>
  +	<dt id="what-is-blfs">What is BLFS?</dt>
  +		<dd>
  +			<p>LFS is a very basic system, in massive contrast to traditional distributions. The reason is this: LFS is not intended to create your system as you want it. It's intended to be just enough to allow you to build your system as you want it. It's not an end, it's a beginning. When you're done with LFS, you've just started building your system.</p>
  +			<p>This can be a problem if you're new to Unix systems and want a typical desktop install with X and a web browser but have no idea what packages you need. For this reason, there is Beyond Linux From Scratch, or <a href="../blfs/whatisblfs.html">BLFS</a>.</p>
  +		</dd>
  +	<dt id="contribute">Contributing to this FAQ.</dt>
  +		<dd>
  +			<p>Suggestions are more than welcome. The FAQ maintainer can be reached either via direct email or on the <a href="http://linuxfromscratch.org/mailman/listinfo/faq">FAQ mailing list</a>.</p>
  +			<p>Useful suggestions include the addition of questions that are actually frequently asked (with well researched answers) and the removal of questions that are obsolete.</p>
  +			<p>If you intend to regularly contribute to this FAQ, you might want to subscribe to the FAQ mailinglist. All suggestions, additions (and sometimes removals) of the FAQ's are discussed there. Patches against the FAQ's are also welcome, allthough regular text-based contributions are accepted as well.</p>
  +			<p>Everything intended to go in the FAQ without substantial editing must be well thought out, checked, and researched; and written in a style consistent with the existing content.</p>
  +		</dd>
  +</dl>
  +<p><a href="#header">Back to the top.</a></p>
   
  -<ul>
  -	<li id="conflicting-gethostname">
  -		<ul>
  -			<li><h5>7.2.2.1. conflicting types for `gethostname'</h5></li>
  -			<li>
  -				 <p>If you get an error about <code>conflicting types for `gethostname'</code> when compiling bash in Chapter 5, you need to install the glibc-static-devel RPM. (It's on the third CD.)</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="yytext_ptr-undeclared">
  -		<ul>
  -			<li><h5>7.2.2.2. "lex.l:429: `yytext_ptr' undeclared" while building modutils</h5></li>
  -			<li>
  -				 <p>If, while compiling modutils, you get:</p>
  -				 <ul class="code">
  -					<li>/usr/bin/gcc -O2 -Wall -Wno-uninitialized -I. -I. -I./../include</li>
  -					<li>-D_GNU_SOURCE  -DCONFIG_ROOT_CHECK_OFF=0 -c -o lex.o lex.c</li>
  -					<li>lex.l: In function `yylex':</li>
  -					<li>lex.l:429: `yytext_ptr' undeclared (first use in this function)</li>
  -					<li>lex.l:429: (Each undeclared identifier is reported only once</li>
  -					<li>lex.l:429: for each function it appears in.)</li>
  -					<li>make[1]: *** [lex.o] Error 1</li>
  -				</ul>
  -				<p>Then <a href="#why-not-version">FBBG</a> (Hint: flex).</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="xfree-png-lz">
  -		<ul>
  -			<li><h5>7.2.2.3. undefined reference to `deflate'</h5></li>
  -			<li>
  -				<p>If, when compiling XFree86, you get:</p>
  -				<ul class="code">
  -					<li>make[3]: Entering directory `/usr/src/xc/programs/xcursorgen'</li>
  -					<li>rm -f xcursorgen</li>
  -					<li>gcc -m32 -o xcursorgen -O2 -fno-strength-reduce -fno-strict-aliasing -ansi -pedantic -Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -Wnested-externs -Wundef -L../../exports/lib xcursorgen.o -lXcursor -lXext -lX11 -lpng -lm -Wl,-rpath-link,../../exports/lib</li>
  -					<li>/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2/../../../libpng.so: undefined reference to `deflate'</li>
  -					<li>/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2/../../../libpng.so: undefined reference to `inflate'</li>
  -					<li>/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2/../../../libpng.so: undefined reference to `inflateInit_'</li>
  -					<li>/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2/../../../libpng.so: undefined reference to `crc32'</li>
  -					<li>/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2/../../../libpng.so: undefined reference to `deflateInit2_'</li>
  -					<li>/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2/../../../libpng.so: undefined reference to `inflateReset'</li>
  -					<li>/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2/../../../libpng.so: undefined reference to `deflateReset'</li>
  -					<li>/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2/../../../libpng.so: undefined reference to `inflateEnd'</li>
  -					<li>/usr/lib/gcc-lib/i686-pc-linux-gnu/3.2/../../../libpng.so: undefined reference to `deflateEnd'</li>
  -					<li>collect2: ld returned 1 exit status</li>
  -					<li>make[3]: *** [xcursorgen] Error 1</li>
  -					<li>make[3]: Leaving directory `/usr/src/xc/programs/xcursorgen'</li>
  -					<li>make[2]: *** [install] Error 2</li>
  -					<li>make[2]: Leaving directory `/usr/src/xc/programs'</li>
  -					<li>make[1]: *** [install] Error 2</li>
  -					<li>make[1]: Leaving directory `/usr/src/xc'</li>
  -					<li>make: *** [install] Error 2</li>
  -				</ul>
  -				<p>Then refer to the <a href="#undefined-deflate">general entry</a> for this issue.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="no-linuxthreads">
  -		<ul>
  -			<li><h5>7.2.2.4. Glibc fails with <code>. . . . it is normal to compile GNU libc with the `linuxthreads' add-on. . . .</code></h5></li>
  -			<li>
  -				<p>The exact error looks like this:</p>
  -				<ul class="code">
  -					<li>*** On GNU/Linux systems it is normal to compile GNU libc with the</li>
  -					<li>*** `linuxthreads' add-on.  Without that, the library will be</li>
  -					<li>*** incompatible with normal GNU/Linux systems.</li>
  -					<li>*** If you really mean to not use this add-on, run configure again</li>
  -					<li>*** using the extra parameter `--disable-sanity-checks'.</li>
  -				</ul>
  -				<p>You have not unpacked glibc-linuxthreads-X.X.X.tar.bz2 <em>in the glibc-X.X.X directory.</em> Unpack it there and you'll be all set.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="perl-missing-separator">
  -		<ul>
  -			<li><h5>7.2.2.5. Perl fails with <code>*** missing separator. Stop.</code></h5></li>
  -			<li>
  -				<p>It's missing a device file. (AFAIK, /dev/null, but maybe /dev/zero.) Anyway, either you forgot to run MAKEDEV, or MAKEDEV failed, or you're using devfs and forgot to mount --bind it under $LFS.</p>
  - 				<p>If MAKEDEV failed, often all the device's ids will end with a "-". AFAIK, this happens when MAKEDEV is run without $LFS/proc mounted.</p>
  -				<p>The devices should look exactly like this:</p>
  -				<ul class="code">
  -					<li>sk at bubook:~ $ ls -l /dev/{null,zero}</li>
  -					<li>crw-rw-rw-  1 root root 1, 3 Dec 31  1969 /dev/null</li>
  -					<li>crw-rw-rw-  1 root root 1, 5 Dec 31  1969 /dev/zero</li>
  -					<li>sk at bubook:~ $</li>
  -				</ul>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="unknown-pseudo-op-hidden">
  -		<ul>
  -			<li><h5>7.2.2.6. Error: Unknown pseudo-op: `.hidden'</h5></li>
  -			<li>
  -				<p>If compiling GCC in Chapter 5 errors out with</p>
  -				<code>Error: Unknown pseudo-op: `.hidden'</code>
  -				<p>Try the solution given in <a href="http://www.linuxfromscratch.org/pipermail/lfs-support/2002-September/009562.html">the lfs-support archives</a>  and replies.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="optimized-glibc-fail">
  -		<ul>
  -			<li><h5>7.2.2.7. My optimized build of glibc is failing in spinlock.c</h5></li>
  -			<li>
  -				<p>It should be mentioned that glibc (and gcc and binutils) are good places to not optimize. The performance versus stability trade off is unusually poor for these packages. But. . . .</p>
  -				<p>If you've specified a CFLAGS value like "-march=i686 -mcpu=686" and you're getting an error like this:</p>
  -				<ul class="code">
  -					<li>spinlock.c: In function `__pthread_lock':</li>
  -					<li>spinlock.c:107: inconsistent operand constraints in an `asm'</li>
  -					<li>make[2]: *** [/usr/src/glibc-build/linuxthreads/spinlock.o] Error 1</li>
  -					<li>make[2]: Leaving directory `/usr/src/glibc-2.2.4/linuxthreads'</li>
  -					<li>make[1]: *** [linuxthreads/others] Error 2</li>
  -					<li>make[1]: Leaving directory `/usr/src/glibc-2.2.4'</li>
  -					<li>make: *** [all] Error 2</li>
  -				</ul>
  -				<p>It's because, unlike almost everything else, spinlock.c requires optimization. You could set CFLAGS to something like "-march=i686 -mcpu=i686 -O2". (Note the "-O2".) But it is better to set optimizations in glibc-x.x.x/Makeconfig. This is the relevant section of Makeconfig:</p>
  -				<ul class="code">
  -					<li># Default flags to pass the C compiler.</li>
  -					<li>ifndef default_cflags</li>
  -					<li>ifeq ($(release),stable)</li>
  -					<li>default_cflags := <strong>-g -O2</strong></li>
  -					<li>else</li>
  -					<li>default_cflags := -g -O</li>
  -					<li>endif</li>
  -					<li>endif</li>
  -				</ul>
  -				<p>And here is an example to adapt:</p>
  -				<ul class="code">
  -					<li># Default flags to pass the C compiler.</li>
  -					<li>ifndef default_cflags</li>
  -					<li>ifeq ($(release),stable)</li>
  -					<li>default_cflags :=</li>
  -					<li><strong>-g0 -Os -march=i386 -mcpu=i386 -pipe</strong></li>
  -					<li>else</li>
  -					<li>default_cflags := -g -O</li>
  -					<li>endif</li>
  -					<li>endif</li>
  -				</ul>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="asm-global-directive">
  -		<ul>
  -			<li><h5>7.2.2.8. Glibc fails with "cannot determine asm global directive".</h5></li>
  -			<li>
  -				 <p>The error, <code>configure: error: cannot determine asm global directive</code>, while configuring glibc indicates a problem with the binutils installation. Likely it isn't statically linked. (You can check with <code>file $LFS/static/bin/as</code>.) In any case, try reinstalling binutils.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="glibc-awk-fail">
  -		<ul>
  -			<li><h5>7.2.2.9. Glibc fails and mentions BEGIN and END.</h5></li>
  -			<li>
  -				<p>If glibc fails to build with an error like this:</p>
  -				<ul class="code">
  -					<li>'BEGIN { subdirs = ""; inhibit = "" };  \</li>
  -					<li>^# { next };  \</li>
  -					<li>^[^-] { subdirs = subdirs " " $0 };  \</li>
  -					<li>^- { inhibit = inhibit " " substr($0, 2) };  \</li>
  -					<li>END { printf "sysdep-subdirs =%s\n", subdirs;  \</li>
  -					<li>  printf "sysdep-inhibit-subdirs =%s\n", inhibit;  \</li>
  -					<li>  print "sysd-dirs-done = t" }'  \</li>
  -					<li> /dev/null linuxthreads/sysdeps/pthread/Subdirs</li>
  -					<li>sysdeps/unix/inet/Subdirs sysdeps/unix/Subdirs ></li>
  -					<li>/usr/src/glibc-build/sysd-dirs-tmp</li>
  -					<li>/bin/sh: line 1: BEGIN { subdirs = ""; inhibit = "" };</li>
  -					<li>^# { next };</li>
  -					<li> ^[^-] { subdirs = subdirs " " $0 }; ^- { inhibit =</li>
  -					<li>inhibit " " substr($0, 2) }; END</li>
  -				</ul>
  -				<p>then gawk is failing. The key is the BEGIN and END in the output. The probable reason is that it's not statically linked which you can fix by going back to Chapter 5 and recompiling it.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="glibc-no-ld_map">
  -		<ul>
  -			<li><h5>7.2.2.10. Glibc fails with "ld.map: No such file or directory".</h5></li>
  -			<li>
  -				 <p>You're missing /dev/null. Either you forgot to create it when the glibc build instructions say to, or you're using devfs and forgot to "mount --bind /dev $LFS/dev" before chrooting. You may have to delete and recreate the glibc-N.N.N and glibc-build directories after fixing that.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="sh-utils-getloadavg">
  -		<ul>
  -			<li><h5>7.2.2.11. My static sh-utils build is failing with "undefined reference to `getloadavg'".</h5></li>
  -			<li>
  -				<p>If you're trying to build static sh-utils and you're getting an error like this:</p>
  -					<ul class="code">
  -						<li>gcc  -g -O2  -static -o uptime  uptime.o ../lib/libsu.a -lutil</li>
  -						<li>uptime.o: In function `print_uptime':</li>
  -						<li>/lfs/tmp/sh-utils-2.0/src/uptime.c:125: undefined reference to `getloadavg'</li>
  -						<li>collect2: ld returned 1 exit status</li>
  -						<li>make[2]: *** [uptime] Error 1</li>
  -						<li>make[2]: Leaving directory `/lfs/tmp/sh-utils-2.0/src'</li>
  -						<li>make[1]: *** [all-recursive] Error 1</li>
  -						<li>make[1]: Leaving directory `/lfs/tmp/sh-utils-2.0'</li>
  -						<li>make: *** [all-recursive-am] Error 2</li>
  -					</ul>
  -				<p>I am unable to reproduce this error and so cannot present a tested solution, but two solutions have been posted by others. I suggest trying them in the following order:</p>
  -				<ul>
  -					<li><a href="http://216.239.39.104/search?q=cache:gSWmRAfYQy8J:archive.linuxfromscratch.org/mail-archives/blfs-support/2001/06/0507.html+&hl=en&ie=UTF-8">(Google's cache - link may disappear!)</a>:  This attempts to correct the incorrectly  generated config.h and should be the correct  solution if you can get it to work by  following the description given in the  post.</li>
  -					<li>If that doesn't work, delete the sources, re-extract, and try this: <a href="http://216.239.37.104/search?q=cache:7pXMmfdvTzgJ:archive.linuxfromscratch.org/mail-archives/blfs-support/2001/06/0495.html+&hl=en&ie=UTF-8">(Google's cache - link may disappear!)</a>.  This attempts to avoid compiling uptime at all  since it won't be needed in chroot and  compiling uptime dynamically in chroot doesn't  have this problem.</li>
  -				</ul>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="cpp-fails-sanity-check">
  -		<ul>
  -			<li><h5>7.2.2.12. C++ preprocessor "/lib/cpp" fails sanity check</h5></li>
  -			<li>
  -				<p>Ncurses in chapter six ends with:</p>
  -				<ul class="code">
  -					<li>checking how to run the C++ preprocessor... /lib/cpp</li>
  -					<li> configure: error: C++ preprocessor "/lib/cpp" fails sanity check</li>
  -				</ul>
  -				<p>The problem is that you have no c++ compiler. In chapter five, gcc is built without the C++ compiler. Before building ncurses gcc is built with the C++ compiler. Most probably, you forgot to extract the g++ tarball. There are more details in <a href="http://archives.linuxfromscratch.org/mail-archives/lfs-support/2003-July/018757.html">the mail archive</a>.</p>
  -			</li>
  -		</ul>
  -	</li>
  -</ul>
  +<h4 id="support">Support guidelines</h4>
  +<dl>
  +	<dt id="newbie">What if I'm a newbie to Linux or LFS?</dt>
  +		<dd>
  +			<p>If you've read <a href="http://linuxfromscratch.org/lfs/view/cvs/preface/prerequisites.html">the prerequisites</a> and <a href="http://linuxfromscratch.org/lfs/view/cvs/preface/whoread.html">the preface</a> you know that the target audience of LFS are intermediate and advanced Linux users. Anybody who has a couple of months experience with Linux and especially the console should be able to successfully assemble his LFS system. </p>
  +			<p>While LFS seems like a good guide for newbies to Linux, the reality is actually quite different. Experience with the support channels shows that LFS is hard to grasp and a frustrating experience for newbies because they lack understanding of the basic concepts.</p>
  +			<p>Practically, this means that newbies should get some experience before starting with LFS. The <a href="http://linuxfromscratch.org/lfs/view/cvs/preface/prerequisites.html">prerequisites page</a> lists the minimal required Linux knowledge, but please also read the <a href="../hints/files/prereading.txt">"Essential pre-reading for life with LFS"</a> hint.</p>
  +			<p>These documents and this FAQ are your basic Linux survival guide. You'll have a great time with LFS if you've read them, and may have some difficulty with LFS and the community, but most likely yourself, if you haven't read them.</p>
  +		</dd>
  +	<dt id="getting-help">Where is the best place to get help?</dt>
  +		<dd>
  +			<p>When this FAQ fails to help, there are several places to go.</p>
  +			<p>If you're having a problem with something in the book, it never hurts to go back over the book. It's surprising how easy it is to overlook little things.</p>
  +			<p>If nothing else, reading the appropriate man and info pages will yield useful information on some subject, if not what you were looking for, and insure that you know enough not to embarrass yourself if you have to ask someone.</p>
  +			<p><a href="http://www.tldp.org/">The Linux Documentation Project</a> has the HOW-TOs and a great deal of other documentation. You might find something there.</p>
  +			<p>The <a href="../search.html">website's search</a> includes the mailing lists. Many questions have been discussed there at least once. </p>
  +			<p>For support-type help, IRC is often best. It's faster, and doesn't clog the mailinglists. There's more information about <a href="../irc.html">the IRC channels</a> on the website.</p>
  +			<p>There are two IRC channels of interest. #LFS, which is a community channel, and #lfs-support, which is for support questions. If you are asking a support question, you are more likely to attract competent and friendly help in #lfs-support.</p>
  +			<p>As a last resort, there are the mailing lists. People will get frustrated with you if you use the wrong one or cross post. Mailing list information is <a href="../mail.html">on the website</a> and tells which list to use.</p>
  +			<p>Please remember to provide enough information when you post to the mailing lists. In <a href="http://linuxfromscratch.org/lfs/view/cvs/chapter02/askforhelp.html">chapter 2 of LFS</a> you find a good method for posting.</p>
  +		</dd>
  +	<dt id="which-list">Which list should I use for what topic?</dt>
  +		<dd>
  +			<p>The full answer is on <a href="../mail.html">the mailinglists page</a>, but here is a summary:</p>
  +			<ul>
  +				<li>Send <em>support</em> questions to only lfs-<span class="strong">support</span> and blfs-<span class="strong">support</span>. Questions like "How do I..." and "I'm getting this error..." or anything else requesting help go to the support lists and no where else.</li>
  +				<li>If you are not having trouble following the <em>LFS</em> Book itself, do <em>not</em> email <span class= "strong">lfs</span>-support.</li>
  +				<li>Unless you are <em>suggesting an improvement</em> to the LFS Book itself, do not email lfs-dev.</li>
  +				<li>Only suggestions concerning the BLFS Book are acceptable on blfs-dev.</li>
  +				<li>Things are a little different with blfs-support. Everything that doesn't fit one of the preceding lists fits there except for the price of beer and GNU versus BSD flamewars.</li>
  +				<li>The price of beer, GNU versus BSD, and Microsoft versus Linux flamewars are restricted to lfs-chat. These days, hardware discussion should go there as well.</li>
  +			</ul>
  +			<p>Of special note is that if you mention XFree86, KDE, or GNOME you may be sure that your post does not belong on lfs-dev or lfs-support.</p>
  +		</dd>
  +	<dt id="netiquette">What about netiquette?</dt>
  +		<dd>
  +			<p>Here are some practical points of etiquette. They include only those items that will draw mention if missed. Those who've been around project mailing lists awhile will find the first few obvious. There are less obvious items toward the end.</p>
  +			<p>The reasons for these points are omitted for brevity, but rest assured, these guidelines are more than just an individual's personal preference.</p>
  +			<p>While the text refers to "the lists" exclusively, it doesn't intend to ignore the news groups that mirror the mailing lists.</p>
  +			<p>With that out of the way, here are a couple manners oriented items followed by more "mechanical" stuff:</p>
  +			<p>Please remember that it is rude to post questions that are answered in commonly available documentation such as the LFS and BLFS Books, this FAQ, the LFS Hints, the appropriate man pages, the list archives, and Google searches. As long as you can demonstrate that you've made an effort to find the answer and you're not offended by a pointer to documentation, no reasonable person will object to your question.</p>
  +			<p>Most of the bothersome flamewars start when a newbie posts an obvious question, is then criticized (even in a kindly manner), and becomes publically offended. Please try to avoid this situation. "Wordlessly" pointing to the exact spot in the documentation is sufficient. If you feel you must criticize, please do it via private email, not on the lists. The same applies to anything else that may become heated.</p>
  +			<p>The lists have an international membership so slang of all sorts and idiom are likely to be misunderstood. (Witness the recent discussion of "bootstrapping".) Any mention of profanity, politics, war, or religion (even in signatures) is likely to upset someone somewhere in the world so please avoid them as well. Finally, it is considered polite to post in English since many more people on the lists know it than any other language.</p>
  +			<p>Now for the more "mechanical" stuff.</p>
  +			<ul>
  +				<li><strong>Do not post in HTML.</strong> If you use Yahoo, Hotmail, or Outlook and haven't turned HTML off, then it is on. If you're using another mail client, please do check before posting. If you don't know how to turn HTML off, see <a href="http://www.expita.com/nomime.html">http://www.expita.com/nomime.html</a>.</li>
  +				<li><strong>Wrap text at 72 characters.</strong> If you do not wish to do this by hand, set your mail client to do it automatically when sending.</li>
  +				<li><strong>Reply <em>below</em> quoted text.</strong> Outlook makes this difficult. There is a <a href="http://home.in.tum.de/%7Ejain/software/outlook-quotefix/">plugin to fix Outlook</a>, and <a href="http://home.in.tum.de/%7Ejain/software/oe-quotefix/">one for Outlook Express</a>.</li>
  +				<li><strong>Limit signatures to four lines.</strong></li>
  +				<li><strong>Trim quoted text,</strong> especially signatures. But <strong>do not trim so that it is confusing to read your reply</strong> without consulting the original.</li>
  +				<li><strong>Do not click reply unless you're actually replying to a post.</strong> Use new, or compose, or whatever your mail client calls it, to ask a new question or start a new thread. Reply sets more than just the subject line and will cause your post to appear in the wrong place unless you're actually answering.</li>
  +			</ul>
  +			<p>The following isn't major, but is useful to know. On the LFS lists, people usually clear the CC field and just mail the list with replies. This is probably not a good idea but is existing practice due to a political situation which is unlikely to change.</p>
  +			<p><a href="http://www.ietf.org/rfc/rfc1855.txt">RFC 1855</a> "provides a minimum set of guidelines for Network Etiquette (Netiquette) and functions as a minimum set of guidelines for individuals, both users and administrators</p>
  +		</dd>
  +</dl>
  +<p><a href="#header">Back to the top.</a></p>
   
  -<h5 id= "fee-compile-notlisted">7.2.3. Compile Time Errors Not Listed Above</h5>
  -	<dl>
  -		<dt>7.2.3.1. <a href="#gnu-patches">I used a patch from GNU to upgrade. Is that OK?</a></dt>
  -		<dt>7.2.3.2. <a href="#optimizations">When using optimization flags (setting CFLAGS)</a></dt>
  -		<dt>7.2.3.3. <a href="#version-not-in-book">I'm using a version not in the book. Is that a problem?</a></dt>
  -		<dt>7.2.3.4. <a href="#dirty-sources">I didn't delete the source tree after my last attempt. Do I need to?</a></dt>
  -	</dl>
  +<h4 id="frb">Frequently Reported Bugs</h4>
  +<dl>
  +	<dt id="wrong-ln-s-command">The "ln -s" commands in the Book are wrong.</dt>
  +		<dd>
  +			<p>No, the "ln -s" commands in the Book are correct. A symlink is just a special file containing the given fileid. So that fileid is relative to the link, not the working directory when the link is created. Try it and see.</p>
  +		</dd>
  +	<dt id="its-hardlink-not-copy">/bin/foo is a copy of /bin/bar.</dt>
  +		<dd>
  +			<p>Try "ls -i /bin/foo /bin/bar". Are the inode numbers the same? If so, they're not copies, they're hardlinked.</p>
  +		</dd>
  +	<dt id="why-not-version">Can I use a version newer than the one in the Book?</dt>
  +		<dd>
  +			<p>If this is your first time building LFS, using a version not in the book or varying from the book in any way is not a good idea. The IRC channel regulars have a saying, "FBBG". As rms, the resident bot, is quick to say, this means, "Follow Book, Book Good." They and the people on the lists have helped many an unhappy newbie who deviated from the book during that first build.</p>
  +			<p>Once you've built a system "by the book", you have a stable knowledge base from which to experiment to your heart's content (or pain, as is often the case.)</p>
  +			<p>If you'd like to experiment then check out <a href="http://osiris.sunderland.ac.uk/~ca9mbu/lfs_packages.html">Matthew Burgess's notes</a> about using the latest versions in LFS CVS.</p>
  +		</dd>
  +	<dt id="new-version">There's a new version of package Foo.</dt>
  +		<dd>
  +			<p>If the new version is more than a day old, it is likely that someone has tested the release and reported it on the mailing lists. Please search the archives before posting questions about whether it works.</p>
  +			<p>If you'd like to report the new release, follow these steps to avoid making a duplicate report.</p>
  +			<ul>
  +				<li>Check the <a href="http://freshmeat.net/">freshmeat</a> page for the project to see if it has been updated. If it hasn't, report the release there.</li>
  +				<li>If freshmeat has been updated, check <a href="http://bugs.linuxfromscratch.org/">LFS bugzilla</a> (or <a href="http://blfs-bugs.linuxfromscratch.org/">BLFS bugzilla</a>) to see if the release has been posted there.</li>
  +				<li>If the release is not in bugzilla, report it to lfs-book (or blfs-book for packages in BLFS). And if you like, test it and report any problems or changes in compilation instructions, too.</li>
  +			</ul>
  +		</dd>
  +	<dt id="delete_key_not_work">The Delete key doesn't work.</dt>
  +		<dd>
  +			<p>Please read the BLFS <a href="http://beyond.linuxfromscratch.org/view/cvs/postlfs/inputrc.html">inputrc page</a>.</p>
  +		</dd>
  +	<dt id="shutdown-on-fsck-error">The system shuts down when fsck errors out!</dt>
  +		<dd>
  +			<p>Unix systems normally run sulogin if the normal bootup fsck run errors out so that root can log in and fix it. Because sulogin will accept any password if /etc/passwd is corrupt, the LFS developers decided this was a security risk. Therefore, the LFS bootscripts shut the machine down if fsck errors, and it must be booted with the "init=/bin/bash" kernel parameter to get a root shell. Whether this is wise is beyond the scope of the FAQ, but if it doesn't work for you you'll want to change that boot script before it's too late.</p>
  +		</dd>
  +	<dt id="missing-fm-project">The freshmeat project page doesn't exist.</dt>
  +		<dd>
  +			<p>The following Freshmeat pages have been removed recently:</p>
  +			<ul>
  +				<li>http://freshmeat.net/projects/gnufileutils/</li>
  +				<li>http://freshmeat.net/projects/sh-utils</li>
  +			</ul>
  +			<p>These projects are discontinued and now maintained in the <a href="http://freshmeat.net/projects/coreutils">coreutils</a> project. Future LFS versions will be updated to this package. For LFS-4.1, refer to <a href="../lfs/packages.html">the new LFS packages webpage</a>.</p>
  +		</dd>
  +</dl>
  +<p><a href="#header">Back to the top.</a></p>
   
  -<ul>
  -	<li id="gnu-patches">
  -		<ul>
  -			<li><h5>7.2.3.1. I used a patch from GNU to upgrade. Is that OK?</h5></li>
  -			<li>
  -				<p>Patches from GNU don't usually work. You can either download the full archive and try again or try the solution given by Gerard Beekmans:</p>
  -				<p>The problem is that executable marked scripts are patched too and they then lose the executable bit, so you can't execute those scripts anymore until you run a "chmod +x" on them (or something similar, like chmod 755) before installing Glibc. Try chmod +x glibc-2.2.5/scripts/* (not 100% sure about the directory paths but it should be obvious where to do it when running an 'ls' on the glibc-2.2.5 directory). </p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="optimizations">
  -		<ul>
  -			<li><h5>7.2.3.2. When using optimization flags (setting CFLAGS)</h5></li>
  -			<li>
  -				<p>If you're getting errors and you're setting CFLAGS or otherwise passing optimization flags to the compiler that may be the problem.</p>
  -				<p>If you ask on the list and they can't figure it out immediately, they'll likely suggest trying it without optimization. So if you just retry it without before asking, you'll be one step ahead of them :)</p>
  -				<p>Of particular note is that optimizing binutils, gcc, or glibc may cause any other package to fail to compile or run or to otherwise misbehave in strange and mysterious ways. Also, optimization that works for someone else may not work for you. Flags that used to work may mysteriously stop working. Even some small innocent hardware change can make the difference.</p>
  -				<p>(If you don't know what optimization flags are, don't worry, you really don't need to.)</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="version-not-in-book">
  -		<ul>
  -			<li><h5>7.2.3.3. I'm using a version not in the book. Is that a problem?</h5></li>
  -			<li>
  -				 <p>If you're getting errors and you're using a version of a package that differs from the version in the book (either newer or older), try the version in the book. Sometimes there are reasons why the book uses a particular version. Search the list archives if you're curious. See <a href="#why-not-version">this FAQ entry</a> for more information.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="dirty-sources">
  -		<ul>
  -			<li><h5>7.2.3.4. I didn't delete the source tree after my last attempt. Do I need to?</h5></li>
  -			<li>
  -				 <p>Yes, but see "<a href="#how-to-compile">How do i compile a package?</a>" for the details including an exception to that rule.</p>
  -			</li>
  -		</ul>
  -	</li>
  -</ul>
  +<h4>Project-specific FAQ's</h4>
  +<p>To make the FAQ more usable, I've decided to split it up in an <a href="../lfs/faq.html">LFS</a> and a <a href="../blfs/faq.html">BLFS</a> section. This page still lists all FAQ's.</p>
   
  - <h4 id="fee-runtime">7.3. Run Time Errors</h4>
  -	<dl>
  -		<dt>7.3.1. <a href="#net-pf-x">I'm getting errors about net-pf-?.</a></dt>
  -		<dt>7.3.2. <a href="#char-major-10-135">modprobe: Can't locate module char-major-10-135</a></dt>
  -		<dt>7.3.3. <a href="#no-dev-rtc">modprobe: Can't locate module /dev/rtc</a></dt>
  -		<dt>7.3.4. <a href="#unable-to-mount-root">Kernel panic: VFS: unable to mount root fs</a></dt>
  -		<dt>7.3.5. <a href="#respawning-too-fast">init: Id "1" respawning too fast: disabled for 5 minutes</a></dt>
  -		<dt>7.3.6. <a href="#lilo-errors">What do those LILO errors mean?</a></dt>
  -		<dt>7.3.7. <a href="#f-hostname">My hostname is getting set to "-f"!</a></dt>
  -		<dt>7.3.8. <a href="#less-prints-ad">Why does less (and therefore man) print <AD> instead of hyphens?</a></dt>
  -		<dt>7.3.9. <a href="#eth0-unknown-interface">eth0:unknown interface</a></dt>
  -		<dt>7.3.10. <a href="#spurious-8259A-interrupt">spurious 8259A interrupt: IRQ14</a></dt>
  -	</dl>
  +<!-- Insert iframe for LFS FAQ here! -->
  +<!-- Insert iframe for BLFS FAQ here! -->
   
  -<ul>
  -	<li id="net-pf-x">
  -		<ul>
  -			<li><h5>7.3.1. I'm getting errors about net-pf-?.</h5></li>
  -			<li>
  -				<p>When you compiled net-tools you enabled support for a protocol family (that's where the "pf" comes from) that you didn't enable support for in the kernel. (You probably just accepted the default answers.)</p>
  -				<p>A full list of protocols is in /usr/include/linux/socket.h but here is a list of the likely culprits:</p>
  -				<ul class="code">
  -					<li>net-pf-3: Amateur Radio AX.25 (AF_AX25)</li>
  -					<li>net-pf-4: Novell IPX (AF_IPX)</li>
  -					<li>net-pf-5: AppleTalk DDP (AF_APPLETALK)</li>
  -					<li>net-pf-6: Amateur Radio NET/ROM (AF_NETROM)</li>
  -					<li>net-pf-9: Reserved for X.25 project (AF_X25)</li>
  -				</ul>
  -				<p>Naturally the fix is to recompile net-tools without support for the things you don't need. (Or recompile your kernel with support if you find you actually wanted them.) The workaround to put a line like the following in /etc/modules.conf</p>
  -				<code>alias net-pf-? off</code>
  -				<p>Replace the question mark with the correct number, of course. And rerun depmod.</p>
  -				<p>If you get an error about net-pf-7, you probably need to enable support for the loopback network device (not block device) in your kernel. Or you may need to add the following line to /etc/modules.conf and rerun depmod.</p>
  -				<code>alias net-pf-7 loop</code>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="char-major-10-135">
  -		<ul>
  -			<li><h5>7.3.2. modprobe: Can't locate module char-major-10-135</h5></li>
  -			<li>
  -				<p><code>char-major-10-135</code> refers to the character device, major 10, minor 135, which is /dev/rtc. It provides access to the BIOS clock, or RTC, the Real Time Clock. See /usr/src/linux/Documentation/rtc.txt for more information.</p>
  - 				<p>The error is because something, most likely hwclock, is trying to use /dev/rtc but you haven't configured kernel support for it in your kernel. Either delete /dev/rtc so hwclock won't try to use it or enable RTC support in your kernel. It's located in make menuconfig under "Character devices" -> "Enhanced Real Time Clock Support".</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="no-dev-rtc">
  -		<ul>
  -			<li><h5>7.3.3. modprobe: Can't locate module /dev/rtc</h5></li>
  -			<li>
  -				 <p>See the question <a href="#char-major-10-135">"modprobe: Can't locate module char-major-10-135"</a>.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="unable-to-mount-root">
  -		<ul>
  -			<li><h5>7.3.4. Kernel panic: VFS: unable to mount root fs</h5></li>
  -			<li>
  -				<p>There several reasons why the kernel might be unable to mount the root filesystem.</p>
  -				<ul>
  -					<li>Did you specify the correct partition in <code>/etc/lilo.conf</code>?</li>
  -					<li>Did you remember to rerun lilo after changing <code>/etc/lilo.conf</code>?</li>
  -					<li>Is support for the hard drive enabled in the kernel. For SCSI this means support for the specific SCSI adapter.</li>
  -					<li>Is support for the hard drive compiled into the kernel, not just as a module. (Modules are stored on the filesystem. If a driver needed to access the filesystem is stored as a module on that filesystem, well. . . you know. . . . ;)</li>
  -					<li>Is support for the filesystem compiled into the kernel. Again, not a module. Support for ext2 is enabled by default, but others like ext3, reiser, jfs, and xfs are not.</li>
  -				</ul>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="respawning-too-fast">
  -		<ul>
  -			<li><h5>7.3.5. init: Id "1" respawning too fast: disabled for 5 minutes</h5></li>
  -			<li>
  -					<p>When you see, in your syslogs, this line:</p>
  -					<code>init: Id "1" respawning too fast: disabled for 5 minutes</code>
  -					<p>It means you have an error in the /etc/inittab line beginning with the given id ("1" in this example).</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="lilo-errors">
  -		<ul>
  -			<li><h5>7.3.6. What do those LILO errors mean?</h5></li>
  -			<li>
  -				 <p>The documentation in the LILO distribution lists all errors (such as when it prints "LI" and stops), but a quick overview is available at <a href="http://sdb.suse.de/sdb/en/html/kgw_lilo_errmsg.html">http://sdb.suse.de/sdb/en/html/kgw_lilo_errmsg.html</a>.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="f-hostname">
  -		<ul>
  -			<li><h5>7.3.7. My hostname is getting set to "-f"!</h5></li>
  -			<li>
  -				<p>You need to install the net-tools package. (See the instructions in the LFS book.)</p>
  - 				<p>The hostname command your system is using is from sh-utils and doesn't support the -f option. When it is called with the -f option it assumes the hostname should be set to "-f". The hostname command from net-tools doesn't have this problem.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="less-prints-ad">
  -		<ul>
  -			<li><h5>7.3.8. Why does less (and therefore man) print <AD> instead of hyphens?</h5></li>
  -			<li>
  -				<p>Because the LANG and LC_ALL environment variables aren't set. To fix that, set them in both the ~/.bash_profile and ~/.bashrc files for each user or in /etc/profile, which will take care of all users, by adding lines like this:</p>
  -				<ul class="code">
  -					<li>export LANG=en_US</li>
  -					<li>export LC_ALL=POSIX</li>
  -				</ul>
  -				<p>Those lines can be added to /etc/profile with the following command:</p>
  -				<code>echo -e 'export LANG=en_US\nexport LC_ALL=POSIX' >> /etc/profile</code>
  -				<p>If you don't use US English you'll have to change the "en_US" part and possibly the values of various LC_* variables as well. Running the locale command lists many (all?) of the LC_* variables.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="eth0-unknown-interface">
  -		<ul>
  -			<li><h5>7.3.9. eth0:unknown interface:No such device [failed] </h5></li>
  -			<li>
  -				<p>The full error looks like this:</p>
  -					<ul class="code">
  -						<li>eth0:unknown interface:No such device [failed]</li>
  -						<li> Setting up default gateway...</li>
  -						<li> SIOCADDRT:No such device [failed]</li>
  -					</ul>
  -				<p>eth0 is a virtual device with no /dev entry. It refers to the first detected network card in your system. The reason the kernel can't route find this device is because you forgot to add support for your network card in the kernel. The kernel detected the card but doesn't have a driver for it. The LFS boot script tries to bring up the network but fails because of this.</p>
  -				<p>Recompile your kernel with the proper driver, either built in or as a module. If you compiled the network driver as a module, then also adjust /etc/modules.conf to alias the network card module as eth0; for example: <code>alias eth0 8139too</code>. If you don't know which network card you have, you can use <code>dmesg</code>, /proc/pci or <code>lspci</code> to find out.</p>
  -			</li>
  -		</ul>
  -	</li>
  -	<li id="spurious-8259A-interrupt">
  -		<ul>
  -			<li><h5>7.3.10. spurious 8259A interrupt: IRQ14 </h5></li>
  -			<li>
  -				<p>Short summary: It's a hardware problem (usually). Transient Line-noise/crosstalk persuades the PIC that something happened; this can result in a 'dummy' interrupt being raised, which happens to be IRQ7 with intel's 8259 design.The problem could possibly also be caused by (or instead be caused by) a device driver not properly masking its interrupts before servicing, this would be the suspect if the IRQ7's were happening in bursts, or more often than 'several' per day. (<a href="http://groups.google.com/groups?q=spurious+interrupt+8259&hl=de&scoring=d&selm=3C174EDD.9090306%40hotmail.com&rnum=10">Source and additional information</a>)</p>
  -				<p>Since the message itself is harmless, it's enough to adjust the default loglevel outplut of klogd (the -c opion) in the syslogd bootscript. See <code>man klogd</code> for details. You can also try recompiling the kernel and unset CONFIG_LOCAL_APIC.</p>
  -			</li>
  -		</ul>
  -	</li>
  -</ul>
  +<h4 id="oldfaq">Old and expired FAQ's</h4>
  +<dl>
  +	<dt><a href="#where-lfs-packages">Where are the lfs-packages tarballs or wget scripts?</a></dt>
  +		<dd>This entry is obseleted by <a href="../lfs/packages.html">the LFS packages webpage</a>.</dd>
  +	<dt><a href="#how-to-find">How do I find a package or command?</a></dt>
  +		<dd>This entry is mostly obseleted by <a href="../lfs/packages.html">the LFS packages webpage</a>.</dd>
  +	<dt><a href="#version-not-in-book">I'm using a version not in the book. Is that a problem?</a></dt>
  +		<dd>There's allready a <a href="#why-not-version">FAQ entry</a> which describes this. Since hardly anyone refers to this entry it's obseleted.</dd>
  +	<dt><a href="#wheres-which">Where's which?</a></dt>
  +		<dd>Obseleted by the <a href="../blfs/view/stable/general/which.html">BLFS</a> book.</dd>
  +	<dt><a href="#portmap">Where's portmap?</a></dt>
  +		<dd>Obseleted by the <a href="../blfs/view/stable/basicnet/portmap.html">BLFS</a> book.</dd>
  +	<dt><a href="#lfs-logos">Where can I get LFS Logos?</a></dt>
  +		<dd>This entry is obseleted by <a href="../blfs/artwork/">the BLFS artwork webpage</a>.</dd>
  +	<dt><a href="#old-sources">I'm having trouble compiling something really old.</a></dt>
  +		<dd>This entry is just really old and probably not relevant anymore.</dd>
  +	<dt><a href="#no-dev-eth0">Where is /dev/eth0?</a></dt>
  +		<dd>Duplicate of <a href="#eth0-unknown-interface">#eth0-unknown-interface</a>. The latter however properly explains how to setup the eth0 interface, which is a much more common question then wether or not it's a device in /dev.</dd>
  +	<dt><a href="#how-to-create-user">How do I create a non-root user?</a></dt>
  +		<dd>This information is now <a href="../lfs/view/stable/chapter05/addinguser.html">integrated in the LFS book</a>.</dd>
  +	<dt><a href="#xfree-png-lz">undefined reference to `deflate'</a></dt>
  +		<dd>Duplicate of <a href="#undefined-deflate">undefined reference to `deflate'</a>.</dd>
  +	<dt><a href="#optimized-glibc-fail">My optimized build of glibc is failing in spinlock.c</a></dt>
  +		<dd>Let's not encourage people to optimize glibc. Besides, <a href="#optimizations">When using optimization flags (setting CFLAGS)</a> should take care of this question.</dd>
  +</dl>
  +
  +<h4 id="changelog">Changelog</h4>
  +	<p>Changelog for the various FAQ's comes here...</p>
  +
  +<h4 id="thanks">Thanks</h4>
  +	<p>This FAQ is dedicated to all the hard-working people on the support lists who keep me busy with this FAQ ;-). </p>
  +	<p>Thanks go to...</p>
  +	<ul>
  +		<li>Seth W. Klein for creating and maintaining this FAQ before me.</li>
  +		<li>All the guys (and all of the few girls as well, wish there were more of you) on the lists, from whose answers so many of these answers come.</li>
  +		<li>Especially those of you who sort out a question, its symptoms, and its answer and mail the lot to me. Your IDs are immortalized in the commit logs (though only for the span of a digital forever, but hey, I try :-)</li>
  +		<li>Tushar Teredesai, Chris Lingard, Jeremy Utley, The Cheeze and countless other people who regularly post FAQ links to the support lists.</li>
  +		<li>The BLFS editors whose book produces so delightfully few FAQs.</li>
  +	</ul>
   
   </div> <!-- end content -->
   
  @@ -1614,6 +276,39 @@
   		<li><a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../images/css.png" alt="Valid CSS!" height="15" width="80" /></a></li>
   	</ul>
   </div>
  +
  +<div id="generalnav">
  +	<ul>
  +		<li><h3>Contribute:</h3>
  +			<ul>
  +				<li><a href="../donation.html" title="Donate via paypal">Make a donation</a></li>
  +				<li><a href="http://test.linuxfromscratch.org/cgi-bin/lfscounter.cgi" title="Get counted!">Register as LFS user</a></li>
  +				<li><a href="../becomemirror.html" title="If you have some bandwidth to spare">Become a mirror</a></li>
  +				<li><a href="../patches/" title="Submit patches for LFS or BLFS">Submit patches</a></li>
  +			</ul>
  +		</li>
  +		<li><h3>Help and contact:</h3>
  +			<ul>
  +				<li><a href="../faq/" title="Frequently Asked Questions (and answers!)">FAQ</a></li>
  +				<li><a href="../search.html" title="Advanced search page">Search</a></li>
  +				<li><a href="../irc.html" title="Chat channels and nick names">IRC</a></li>
  +				<li><a href="../newsgroups.html" title="For following development and advanced support">News groups</a></li>
  +				<li><a href="../mail.html" title="For following development and advanced support">Mailing lists</a></li>
  +				<li><a href="../people.html" title="Who is who and who does what">The LFS team</a></li>
  +			</ul>
  +		</li>
  +		<li><h3>About this website:</h3>
  +			<ul>
  +				<li><a href="index.html" title="Home (mirror list)" accesskey="1">Home (Mirror list)</a></li>
  +				<li><a href="../sitemap.html" title="Structured overview of the website" accesskey="3">Sitemap</a></li>
  +				<li><a href="../accesskeys.html" title="Keyboard shortcuts for this site" accesskey="0">Accesskeys</a></li>
  +				<li><a href="../website.html" title="General info about this site">Website information</a></li>
  +				<li><a href="http://linuxfromscratch.org/mailman/listinfo/website" title="Mail us if you run into problems with this website" accesskey="9">Contact webmaster</a></li>
  +			</ul>
  +		</li>
  +	</ul>
  +</div><!-- end generalnav -->
  +</div><!-- end container -->
   
   </body>
   </html>
  
  
  



More information about the website mailing list