From 4fa86d1ec842c313976fd68f639183aac724de5e Mon Sep 17 00:00:00 2001 From: Greg Schafer Date: Mon, 29 Sep 2003 06:08:10 +0000 Subject: Chapter 5 - Glibc: Add notes regarding test suite issues. git-svn-id: http://svn.linuxfromscratch.org/LFS/trunk/BOOK@2903 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689 --- chapter05/glibc-inst.xml | 70 +++++++++++++++++++++++++++++++++++++++--------- 1 file changed, 57 insertions(+), 13 deletions(-) (limited to 'chapter05') diff --git a/chapter05/glibc-inst.xml b/chapter05/glibc-inst.xml index 83b64eb69..4bae896d4 100644 --- a/chapter05/glibc-inst.xml +++ b/chapter05/glibc-inst.xml @@ -77,21 +77,65 @@ libpng, libz, and so forth). *** Check the INSTALL file for required versions. The missing or incompatible msgfmt program is -generally harmless and shouldn't cause us any problems. +generally harmless, but it's believed it can sometimes cause problems when +running the test suite. -Continue with compiling the package: +Compile the package: -make -make check -make install +make -The glibc make check process is highly dependent on certain functions -of your host operating system. The most common is a host that fails to mount -a tmpfs filesystem at /dev/shm, which may cause glibc tests to fail. +Run the test suite: -The locales (used by Glibc to make your Linux system respond in a -different language) weren't installed when you ran the previous command, -so we have to do that ourselves now: +make check + +The Glibc test suite is highly dependent on certain functions of your host +system, in particular the kernel. Additionally, here in Chapter 5, some tests +can be adversely affected by existing tools or environmental issues on the host +system. Of course, these won't be a problem when we run the Glibc test suite +inside the chroot environment of Chapter 6. In general, the Glibc test suite is +always expected to pass. However, as mentioned above, some failures are +unavoidable in certain circumstances. Here is a list of the most common issues +we are aware of: + + +The math tests sometimes fail when running on systems where the +CPU is not a relatively new genuine Intel or genuine AMD. Certain optimization +settings are also known to be a factor here. + +The gettext test sometimes fails due to host system issues. The +exact reasons are not yet clear. + +The atime test sometimes fails when the LFS parition is mounted +with the noatime option or due to other file system quirks. + +In general, when running on slower hardware, some tests might +fail due to test timeouts being exceeded. + +The shm test might fail in the circumstances of the host system +running the devfs file system but not having the tmpfs filesystem mounted at +/dev/shm due to lack of support for tmpfs in the kernel. + + +In summary, don't worry too much if you see Glibc test suite failures here +in Chapter 5. The Glibc in Chapter 6 is the one we'll ultimately end up using so +that is the one we would really like to pass. But please keep in mind, even in +Chapter 6 some failures could still occur, the math tests for example. When +experiencing a failure, note the failure then continue on by reissuing the +make check. The test suite should pick up where it left +off and continue on. You can circumvent this stop-start sequence by issuing a +make -k check. But If you do that, be sure to log the +output so that you can later on peruse the log file and examine the total number +of failures. + +Now install the package: + +make install + +Different countries and cultures have varying conventions for how to +communicate. These conventions range from very simple ones, such as the format +for representing dates and times, to very complex ones, such as the language +spoken. This "internationalization" works by means of locales. We'll install the +Glibc locales now: make localedata/install-locales @@ -99,10 +143,10 @@ so we have to do that ourselves now: those locales which you need or want. This can be achieved by using the localedef command. Information on this can be found in the INSTALL file in the -glibc-&glibc-version; tree. However, there are a +glibc-&glibc-version; source. However, there are a number of locales that are essential for the tests of future packages to pass correctly, in particular, the libstdc++ tests from GCC. The following -instructions, in place of the install-locales command above, will install +instructions, instead of the install-locales command above, will install the minimum set of locales necessary for the tests to run successfully: mkdir -p /tools/lib/locale -- cgit v1.2.3-54-g00ecf