4.6. Über die Testsuites

Die meisten Pakete enthalten auch eine Testsuite. Es ist prinzipiell immer eine gute Idee, eine solche Testsuite für neu kompilierte Programme auch durchlaufen zu lassen. So stellen Sie sicher, dass alles korrekt kompiliert wurde. Wenn eine Testsuite alle ihre Tests erfolgreich durchläuft, können Sie ziemlich sicher sein, dass das Paket so funktioniert, wie es der Entwickler vorgesehen hat. Dennoch ist das natürlich kein Garant für absolute Fehlerfreiheit.

Manche Tests sind wichtiger als andere. So zum Beispiel die Tests der Toolchain-Pakete—GCC, Binutils und Glibc (die C Bibliothek)—sind von höchster Bedeutung, weil diese Pakete eine absolut zentrale Rolle für die Funktion des gesamten Systems spielen. Aber seien Sie gewarnt: die Testsuites von GCC und Glibc brauchen sehr viel Zeit, vor allem auf langsamer Hardware. Dennoch wird dringend empfohlen, sie durchlaufen zu lassen!

[Anmerkung]

Anmerkung

Die Erfahrung hat gezeigt, dass man in Kapitel 5 vom Durchlaufen lassen der Testsuites im Grunde nicht viel gewinnt. Das Host-System hat immer einen gewissen Einfluss auf die Tests in dem Kapitel und das verursacht seltsame und unerklärliche Fehler. Und nicht nur das, die in Kapitel 5 erzeugten Werkzeuge sind ohnehin nur temporär und werden später wieder gelöscht. Daher empfehlen wir Ihnen, die Testsuites in Kapitel 5 nicht durchlaufen zu lassen. Die Anleitungen dafür sind dennoch vorhanden, um Testern und Entwicklern eine Hilfe zu sein, aber für alle anderen Anwender sind sie nur optional.

Ein weit verbreitetes Problem beim Durchlaufen der Testsuites von Binutils und GCC sind zu wenig zur Verfügung stehende Pseudo-Terminals (PTYs). Ein typisches Symptom dafür sind ungewöhnlich viele fehlgeschlagene Tests. Das kann verschiedene Ursachen haben. Die häufigste Ursache ist, dass das devpts-Dateisystem des Host-Systems nicht funktioniert. Dies wird später in Kapitel 5 ausführlicher behandelt.

Manchmal verursachen Testsuites eines Pakets auch falschen Alarm. Sehen Sie im LFS-Wiki unter http://www.linuxfromscratch.org/lfs/build-logs/6.1/ nach und prüfen Sie, ob diese Fehler normal sind. Das gilt für alle Tests im gesamten Buch.