lfs-uefi: fix efivar-37 FTBFS
[linux_from_scratch_hints.git] / OLD / prereading.txt
blobff43bf3b8bbda94501c060a7e1278cd92c3abf9f
1 TITLE:          Essential pre-reading for life with LFS
2 LFS VERSION:    any and all, including the next one.
3 AUTHOR:         Richard A Downing FBCS<richard.downing@bcs.org.uk>
4 (Author's version number 3. Links checked 20030417)
6 SYNOPSIS:
7 --------------------------------------------------------------------------
8 This hint is a list of good documents that you can get for free 
9 on the Internet, together with some advice from me and my friends. It will 
10 help you get 'educated' to a level where you can:
12   1)  build LFS successfully
13   2)  ask sensible questions on the LFS lists and understand the replies.
14   3)  stay sane while doing all this.
15   
16 In the LFS book, Gerard says:
18   "This book assumes that its reader has a good deal of knowledge about 
19   using and installing Linux software."
21 Gerard then suggests some reading.  I suggest some more here, and some 
22 exercises to go with them.
24 ---------------------------------------------------------------------------
25 Please help me improve this hint!
27 1) This is a 'work in progress' and I'm missing a good reference 
28    on some stuff. So, if you know of, or find a good one, please write me.   
29    
30 2) Sometimes the hyperlinks go out of date - the date I last checked them
31    is stated above. If you find that a link is broken, please start by using
32    google (see below) to try and find the new home.
33    In any case, if you succeed or not, please send me an email so that I
34    can update the hint.
35    
36 3) Also I just like feedback, so it never hurts to send an email.
37    
38    
39 HINT:
40 ---------------------------------------------------------------------------
42 Part 1. Social stuff. (MOST important)
43 -----------------------------------------
45 Many people ask questions badly on the LFS mailing lists.  Sometimes they 
46 get rude replies.  Read this to stay sane.
48     http://www.catb.org/~esr/faqs/smart-questions.html
50 Please note that all the LFS mailing lists expect:
52   1) plain text email.  No HTML.
53   2) bottom posting.  Add your bit UNDERNEATH the bit you quoted.
54   3) pruned quotes.  Don't quote everything, just the significant bit.
55   4) no cross-posts.  Just use the right list.
56   5) thick skins.  Don't respond to rudeness, just ignore it.
57   6) zazen.  (Just Sitting) If others have a flame-war, just sit and watch.
58   
59 Before asking questions on lfs lists, please search the archives:
61     http://search.linuxfromscratch.org
62     
63 AND PLEASE READ THE FAQ.  Read the latest copy, not some 
64 old thing you downloaded last week.
66     http://www.linuxfromscratch.org/faq/
68 If you ask a question that is in the FAQ, you are being extremely rude, 
69 not least to Seth who maintains it (wonderfully).  So you rightly WILL get 
70 flamed.
72 Special note:
73 ---------------
74 If someone tells you to RTFM, they are not, repeat NOT, being rude 
75 or getting at you.  This is the accepted phrase indicating that you need to 
76 Read The Friendly Manual.  If you have previously been told that a 
77 certain Old Low Dutch word is referred to by the 'F', please be assured 
78 that this is just a myth .:-) 
80 Part 2. Technical stuff.
81 -------------------------
83 Many people attempt to build LFS without sufficient understanding 
84 or experience with LINUX.  Here is an excerpt from the tar manual:
86    "you should understand something about how Unix-type operating systems
87     work, and you should know how to use some basic utilities.  
88     For example, you should know how to create, list, copy, rename, 
89     edit, and delete files and directories; how to change between 
90     directories; and how to figure out where you are in the filesystem. 
91     You should have some basic understanding of directory structure and 
92     how files are named according to which directory they are in.  You 
93     should understand concepts such as standard output and standard 
94     input, what various definitions of the term "argument" mean, the    
95     differences between relative and absolute path names"
96    
97 In the LFS book, Gerard says:
98     
99   "We are going to build the LFS system by using a 
100    previously installed Linux distribution such as Debian, SuSE, Slackware, 
101    Mandrake, RedHat, etc. We will use the existing Linux system as the 
102    development platform, because we need tools like a compiler, linker, 
103    text   editor, and other development tools to build our system.
105 Choosing a distro is only hard because of the choice, my 
106 advice is to choose a modern cheap one because once you have learned
107 a bit and then built LFS you will junk it.
108 I got mine (Mandrake-8) free with a magazine, I've also used Debian.
110 If you are confused about distros this may help:
112     http://tldp.org/HOWTO/CD-Distributions-EN-HOWTO/index.html
114 Unlike Windows, Unix requires you to understand what you are doing to get 
115 anything much out of it.  Both Windows and Unix require deep understanding 
116 to get the best out of them.  This document is very basic, but will help 
117 you if you are coming from Windows, or just starting out understanding 
118 computing:
120     http://tldp.org/HOWTO/Unix-and-Internet-Fundamentals-HOWTO/
122 The next one is also good, yes, it's dated, but still worth reading:
124     http://tldp.org/LDP/gs/
125     
126 A recent new guide geared for the newbie is this one, I like it as it has
127 exercises, so you'll know if you've understood:
129     http://tldp.org/LDP/intro-linux/html/index.html
131 If you have read those, then you are aware that we drive Unix though a 
132 shell, which provides the command line interface.  The shell we use in LFS, 
133 as in most of the Linux world, is bash (The Bourne Again Shell).  You need 
134 to be fluent in using bash, this is a good tutorial:
136     http://tldp.org/LDP/abs/html/index.html
138 (Yes, I know it says 'Advanced', but read it anyway, do you want to be a 
139 newbie forever?)
141 Then there are three books that you ought to have available from or on your 
142 box for easy reference, skim read them now so you know how to use them:
144 The Linux User's Guide (this is out of date and so, unfortunately,
145 http://tidp.org doesn't keep it in html but if this link fails try there).  
147     http://espc22.murdoch.edu.au/~stewart/guide/guide.html
149 The Linux Systems Administrators Guide
151     http://tldp.org/LDP/sag/index.html
153 The Linux Network Administrators Guide, Second Edition
155     http://tldp.org/LDP/nag2/index.html
157 Having got yourself a LINUX system, and played a bit, you now will know a 
158 little about the subject, but before moving on to the building of LFS you 
159 should learn how to build packages from source code.  This is an area 
160 where it's hard to find good references.  Gerard suggests this one in the 
161 LFS book:
163     http://tldp.org/HOWTO/Software-Building-HOWTO.html
165 And this is good too, particularly if you want to write Linux software
166 eventually:
168     http://sources.redhat.com/autobook/autobook/autobook_toc.html
170 It's very important that you have some experience installing a 
171 package from source on your distro before attempting LFS.
172   
173 One good choice would be GNU-emacs.  Check out it's homepage at:
175     http://www.gnu.org/software/emacs/emacs.html
177 Another, suggested by others, is mplayer.  This is a good 
178 challenge and a test of your developing skills.  Mplayer's home website is 
181     http://www.mplayerhq.hu/homepage/
183 IBM, once Big Bad Blue, is now a great supporter of OpenSource and Linux.  
184 They have some free tutorials on their website:
186     http://www-106.ibm.com/developerworks/linux/
188 Look for the 'Tutorials' link (currently top right) and look especially 
189 for the following:
191   Compiling and installing software from sources
192   Compiling the Linux kernel
193   Using regular expressions
195 but there are rich pickings here, even for the experienced.
198 Part 3.  Other stuff.
199 ---------------------
201 My starting point for any query or gap in my knowledge is google, yours 
202 should be too.  Go to the google page, and hit the advanced search button.  
203 Learn the full capabilities of this essential tool, spend at least a whole 
204 day on this.  Truely, you can't live without it.
206     http://www.google.com
208 There is a whole heap of documentation at the Linux Documentation Project, 
209 some of which I've quoted above.  Learn to go there regularly and just poke 
210 about, it's a great storehouse of knowledge.  Beware though a lot of it is 
211 out of date.
213    http://tldp.org/
215 You might want to find some other software for your Linux box.  Start with:
217    http://beyond.linuxfromscratch.org
218    
219 And then another place to search is:
221    http://freshmeat.net/
223 And finally, whatever you read or don't read concerning LFS, before 
224 asking questions, START by reading the FAQ.  FAQ stands for 'Frequently 
225 Asked Questions'.  We don't want to answer them again, so don't ask them.  
226 Read the FAQ.
228     http://www.linuxfromscratch.org/faq/
230 ---------------------------------------------------------------------------
231 Acknowledgements
232 ----------------
233 I have received encouragement and advice from the following, but the words 
234 are my fault alone:
235 Dagmar D'Surreal, Tushar Teredesai, Ken Dyke, James Robertson, Eric Miller, 
236 and lots of others on lfs-chat.  Recent feedback from Jeroen Coumans
237 reminded me to check the links again.
238 But nothing would have been done at all without the LFS project 
239 that Gerard Beekmans started:  www.linuxfromscratch.org
241 Good luck,
242 Richard. #207.