Errata

Building Embedded Linux Systems

Errata for Building Embedded Linux Systems

Submit your own errata for this product.

The errata list is a list of errors and their corrections that were found after the product was released.

The following errata were submitted by our customers and have not yet been approved or disproved by the author or editor. They solely represent the opinion of the customer.

Color Key: Serious technical mistake Minor technical mistake Language or formatting error Typo Question Note Update

Version Location Description Submitted by Date submitted
PDF Page 36
last sentence of the tip

original sentence:

"Wherever possible, distribution-dependent commands are presented."

I suspect that you meant:

"Wherever possible, distribution-independent commands are presented."

RAThomas  Jan 14, 2009 
PDF Page 68
4th paragraph; 5th line under SCSI/iSCSI heading

Full sentence:: Although mainly thought of as a high-throughput interface for hard drives for high-end workstations and servers, SCSI is a both a general software interface and a set of electrical specifications that can be used to connect various hardware peripherals.

...SCSI is a both a general...
should be
...SCSI is both a general...
# (remove an unnecessary 'a')

silvertip257  Dec 23, 2008 
PDF Page 87-153
Chapter 4

It would be very helpful and provide better understanding if host and target choice made at chapter's beginning (TARGET=powerpc-unknown-linux, HOST=i686-cross-linux-gnu) would be consequently used to the chapters last character.
Currently "Workspace setup" seems to be last station where these are used.

Crosstool sub-chapter selects i686-unknown-linux-gnu-

Using the Toolchain sub-chapter selects i386-linux-

Unclear how it is in uClib buildroot sub-chapter.

It is shown poorly how are impacts of these variables in cross tool-chain generation stage and how they are in cross tool-chain usage stage. How is the relation to ARCH variable?

Lot of inconsistencies and gaps in description regarding above points in whole chapter.

Anonymous  Jan 21, 2016 
Printed Page 95
table 4-2: Utilities found in the binutils package

The fifth entry is labled as 'nmu'. This should read 'nm' (without the 'u').

jasm  Dec 27, 2008 
Printed Page 95
End of first line of last paragraph (bottom of the page)

"... is thein GNU C library, ..." should become "... is the GNU C library, ..."

(change 'thein' in 'the')

jasm  Dec 27, 2008 
Printed Page 96
last paragraph

"As a rule of thumb, glibc can be a good fit for projects with Flash storage sizes of 16 MB or more."

Intended sentence (?):
As a rule of thumb, glibc can be a good fit for projects with RAM sizes of 16 MB or more.

Anonymous  Jul 10, 2009 
Printed Page 104
5th paragraph in Crosstool section

First line of unpack Crosstool commands

$ cd $PROJECT/tools-build

Should be:

$ cd $PROJECT/build-tools

Gary Stewart  Jan 29, 2009 
Printed Page 107
last word of last sentence of first paragraph

the 'i' of 'i686' is dropped - it should read 'i686-unknown-linux-gnu-gcc'

jasm  Dec 27, 2008 
Printed Page 107 and 109
see detailed description

Chapter 4, pages 107 and 109

On page 107, with ptxdist 1.0.1 this does not work:

$ ptxdist setup

On page 109, the tips/suggestions/general notes for this problem is not correct. When ptxdist is configured as shown on page 107 using:

$ ./configure --prefix=$PROJROOT/build-tools/

the link to the ptxdist executable is located at:

${PRJROOT}/build-tools/bin

but the workspace setup script has set the path to the directory:

${PRJROOT}/tools/bin

I fixed this by adding this to the workspace setup script:

export PTXFIX=${PRJROOT}/build-tools

and modifying this line in the script:

export PATH=${PREFIX}/bin:${PTXFIX}/bin:${PATH}

Even this does not completely fix the problem. The link in
${PRJROOT}/build-tools/bin has been set by the ptxdist install to:

ptxdist -> /home/your-home/control-project/daq-module/build-tools//
lib/ptxdist-1.0.1/bin/ptxdist

When you try to execute "ptxdist setup" with this link you get a file
not found error. If you change the link to:

ptxdist -> /home/your-home/control-project/daq-module/build-tools/
lib/ptxdist-1.0.1/bin/ptxdist

(note build-tools/ vs. build-tools//) it works. I am not familiar
with the use of // in paths, if any. It does not cause the link to
show up as a bad link when the directory is listed, but it does not
work either.

Gary Stewart  Jan 29, 2009 
Printed Page 166-169
Section on building & installing modules

When I get done with this step, I get a module directory that is about 39 MB! I FULLY admit, there is something that I could be doing wrong somewhere.. but it would be really nice if somewhere you listed the approximate size of the installed modules. I have backed up and tried a second time to walk though this from scratch, I get the same results.

Anyway, it would be nice if you could give more hints about how to sanity check this.. this just seems way out of line as the kernel and libs are together about 5-6MB. Now I am surfing the net to see if I can figure out what is wrong.


Brian Findlay  Aug 25, 2009 
Printed Page 167
$make ARCH=arm CROSS_COMPILE=arm-linux- distclean

If you do this, then you can't save or build modules as is illustrated on the next pages. Yes, I know a line below you make a comment about backing it up.. but this is just in the wrong place.

Brian Findlay  Aug 25, 2009 
Printed Page 169
$ depmod.pl \ -k ./vmlinux -F ./System.map

Last one tonight at least.. I pulled down Busybox and in the examples directory (NOT scripts as stated), I found depmod.pl when I typed in what was shown, it complained saying I wasn't suppose to do a -k AND -F at the same time. I can do one or the other.. and it works (I'm guessing).. or at least produces output.

Brian Findlay  Aug 25, 2009 
Printed Page 188
5th paragraph

"You have to use Guinea hensudev's Makefile to..."

should read:

"You have to use udev's Makefile to..."

Anonymous  Jan 03, 2009 
PDF Page 280
dhcpd.conf file description

subnet 192.168.1.0 netmask 255.255.255.0 {
-----> option routers 192.168.1.254;
option subnet-mask 255.255.255.0;
host virtex4 {
hardware ethernet 00:C0:FF:EE:01:02;
fixed-address 192.168.1.201;
option host-name "virtex4";
-------------> next-server 192.168.1.3;
filename "/data/kernel/virtex4-vmlinuz-2.6.24.img";
option root-path "/data/root/virtex4";
}
}

option routers and next-server IP addresses are different. Both should be the same as it specifies the IP address of the TFTP server.

reedemus  Feb 24, 2009 
Printed Page 285
Sidebar

The book mentions www.embeddedlinuxbook.org as a source for the qemu-based OpenMoko platform. When will that site be up?

Matt Wilbur  Dec 07, 2008 
PDF Page 285
Compiling and Installing, Par. 1

is-state:
.. either a snapshot release or (if you will be performing development of your own)..
should be:
.. either a release snapshot or (if you will be performing development of your own)..

Anonymous  Jan 21, 2016 
Printed Page 334
2nd para

The command line for building strace is incorrect and will always result in a compiler error. It should read "CC=architecture-linux-gcc ./configure --host=$TARGET" to work correctly.

Anonymous  May 26, 2010