Embedded Linux: Hardware, Software and Interfacing Serving the Embedded Linux Community Since 2001    
 Welcome to Embedded Linux: Hardware, Software and Interfacing
 Friday, September 10 2010 @ 12:28 PM MDT
The Book - Corrections
Embedded Linux: Hardware, Software and Interfacing
Dr. Craig Hollabaugh




03/20/02Jim pointed out that gdb v5.0 is no longer available from gnu.orgI updated the buildtoolchain script to pull gdb v5.0 from RedHat's archives
03/20/02Jim also pointed out that buildtoolchain doesn't generate the toolchain on a workstation running Debian woody During the writing I choose potato over woody because potato was stable and woody was still in testing. Today, woody is still in testing. I wanted the book instructions to work, so I choose potato because it's not going to change. If you're using woody, buildtoolchain will fail. I verified this. There's a bug in the make install script for the glibc build. I found that removing the texinfo package (this is a hack) using apt-get remove texinfo allows the buildtoolchain script to complete succesfully. I'm sorry, I don't have the resources to check the buildtoolchain script on RedHat, SuSe, Mandrake, etc. with all their different versions. I recommend that you devote a machine to cross-compiling, potato is great. You eliminate the chance of destroying your workstation libraries by using a separate machine to build and install the cross-compiler and libraries.
03/20/02John says that buildtoolchain script returns error "./buildtoolchain: buildtoolchain-step01-check: command not found"Corrected this path problem in buildtoolchain
03/25/02Adam says there's no inet.conf in the /etc directory in step 2 on page 94That should be /etc/inetd.conf
03/25/02RoseMarie says there's no /tftpboot directory in step 3 on page 94You need make the /tftpboot prior to the chmod command.
03/25/02Alan says the tftp get command on page 94 times out.The debian 2.2r5 release adds some default security for tftp in the /etc/hosts.deny file. Delete the "ALL: PARANOID" line in that file. This allows tftp to get the test file from the tftp server running on tbdev1.
05/28/02Yuhong says that Select-Printer Control Register in Figure 7.1 should be C3 not C0Yuhong is correct. My artwork to the publisher was correct but the production people added that typo.
05/28/02Yuhong says to remove a "to" from "to to determine" on Page 243Yes, there should be only one to.
05/28/02Yuhong says the last line of page 353 needs a "or" not an "of"Yes, that should read "... either the start or the end of the race."
06/20/02Jim wrote that Figure 7.1 has several errors.My artwork to the publisher was correct but the production people added several typos. Here's the correct figure
07/08/02Geoff mentions an endian problem in Figure 9.3. OK, it took some research into this and yes, I agree. I screwed up the D0-D7 ordering in Figure 9.3. I couldn't figure out why my code and examples worked. (I really did try hard to get this little stuff correct.) Fortunately I took a photo during my development. Get this, I plugged my header in flipped. It just happened to work correctly for the code defines that I had from the MediaEngine (LIFTACMAINS, LIFTMOTORCONTROLLER, etc). Had I plugged the header in correctly, I would have found this little/big endian problem. Oops. Geoff replies with "two wrongs DO make a right."
03/20/02Patrick says "Debian 3.0 is out" what are the new tbdev1 installation instructions?The new installation instructions are here in HTML or Word Document
09/06/02Brian says that inserting the helloworld_proc_module using 2.4.19 results in a licensing warning.Insert MODULE_LICENSE("GPL") just above the MODULE_AUTHOR line. Read more here.
09/06/02Craig says, "What's with Sam in the helloworld_proc_module?"Yeah, originally cat /proc/helloworld returned helloworld Sam, in other words the init function copied Sam into the data variable. At press, I changed the data to Default and forgot to erase Sam from the comment.
09/06/02Craig says, "Figure 7.1 should include the extra bits(output and IRQ enable) in the control register box."Good idea, I don't why I didn't put those bits in there in the first place.
03/08/05Kaiwan Billimoria writes, "Your LM70 code examples are great but they don't work correctly any more."Kaiwan has graciously provided has code for the rest of the world to us. Thanks Kaiwan!

VariousMany people point out that MontaVista's Journeyman product is no longer available.MontaVista made a business decision in February to pull their wonderful Journeyman product from their FTP site. I found out about this just after the book went to press. The book's examples for creation of the x86, PowerPC and StrongARM root filesystem will not function without the Journeyman RPM files. I immediately panicked and called Bill Weinburg at MontaVista. We talked for a few minutes and he gave me permission to mirror the RPMs required for the book's examples. This permission was further confirmed by Joe Samagond. I modified the buildrootfilesystem script to pull the RPM files from this website instead of MontaVistas. (Compare the MVRPMLOC value in the script and in the book.) If you follow the book's instructions, using wget to fetch buildrootfilesystem, your tbdev1 computer will get the updated version that downloads RPMs from this site. Once you have the RPMs, the script will function correctly and generate a minimal root filesystem for your target.

I'll be able to provide these older versions of software to everyone for a while (hopefully a year). I can't guarantee how long these RPMs will be available from this site. MontaVista may decide to revoke this mirroring permission.

Other solutions: compile or cross-compile the sources yourself (good luck, this is NOT a trivial task) or look at using the free products from Timesys.

Journeyman situation merely points out a glimpse of the embedded Linux future. Companies will struggle, re-organize, re-group, consolidate or go out of business. You can see this by reading about Lineo and RidgeRun. Things change. If you are considering Linux for your embedded designs, allocate time for the learning process to compile everything your design requires from source. This will insulate your design from changes in the industry.


Last Updated Sunday, March 27 2005 @ 03:25 PM MST View Printable Version


Copyright © 2002-2008 Craig Hollabaugh
All trademarks and copyrights on this page are owned by their respective owners.
Powered By Geeklog 
Created this page in 0.14 seconds