<?xml version="1.0" encoding="iso-8859-1" standalone="no"?> <!-- The FreeBSD Documentation Project The FreeBSD German Documentation Project $FreeBSD$ $FreeBSDde: de-docproj/books/developers-handbook/kernelbuild/chapter.sgml,v 1.5 2009/02/21 19:22:07 jkois Exp $ basiert auf: 1.3 --> <chapter id="kernelbuild"> <chapterinfo> <authorgroup> <author> <firstname>Johann</firstname> <surname>Kois</surname> <contrib>Übersetzt von </contrib> </author> </authorgroup> </chapterinfo> <title>Einen &os;-Kernel bauen und installieren</title> <para>Ein Kernelentwickler muss wissen, wie der Bau eines angepassten Kernels funktioniert, da das Debuggen des &os;-Kernels nur durch den Bau eines neuen Kernels möglich ist. Es gibt zwei Wege, einen angepassten Kernel zu bauen:</para> <itemizedlist> <listitem> <para>Den <quote>traditionellen</quote> Weg</para> </listitem> <listitem> <para>Den <quote>neuen</quote> Weg</para> </listitem> </itemizedlist> <note> <para>Die folgenden Ausführungen setzen voraus, dass Sie den Abschnitt <ulink url="../handbook/kernelconfig-building.html"> Erstellen und Installation eines angepassten Kernels</ulink> des FreeBSD-Handbuchs gelesen haben und daher wissen, wie man einen FreeBSD-Kernel baut.</para> </note> <sect1 id="kernelbuild-traditional"> <title>Einen Kernel auf die <quote>traditionelle</quote> Art und Weise bauen</title> <para>Bis &os; 4.X wurde dieser Weg zum Bau eines angepassten Kernels empfohlen. Sie können Ihren Kernel nach wie vor auf diese Art und Weise bauen (anstatt das Target <quote>buildkernel</quote> der Makefiles im Verzeichnis <filename class="directory">/usr/src/</filename> zu verwenden). Dies kann beispielsweise sinnvoll sein, wenn Sie am Kernel-Quellcode arbeiten. Haben Sie nur ein oder zwei Optionen der Kernelkonfigurationsdatei geändert, ist dieser Weg in der Regel schneller als der <quote>neue</quote> Weg. Andererseits kann es aber auch zu unerwarteten Fehlern beim Bau des Kernels kommen, wenn Sie Ihren Kernel unter aktuellen &os;-Versionen auf diese Art und Weise bauen.</para> <procedure> <step> <para>Erzeugen Sie den Kernel-Quellcode mit &man.config.8;:</para> <screen>&prompt.root; <userinput>/usr/sbin/config <replaceable>MYKERNEL</replaceable></userinput></screen> </step> <step> <para>Wechseln Sie in das Build-Verzeichnis. &man.config.8; gibt den Namen dieses Verzeichnisses aus, wenn die Erzeugung des Kernel-Quellcodes im vorherigen Schritt erfolgreich abgeschlossen wurde.</para> <screen>&prompt.root; <userinput>cd ../compile/<replaceable>MYKERNEL</replaceable></userinput></screen> </step> <step> <para>Kompilieren Sie den neuen Kernel:</para> <screen>&prompt.root; <userinput>make depend</userinput> &prompt.root; <userinput>make</userinput></screen> </step> <step> <para>Installieren Sie den neuen Kernel:</para> <screen>&prompt.root; <userinput>make install</userinput></screen> </step> </procedure> </sect1> <sect1 id="kernelbuild-new"> <title>Einen Kernel auf die <quote>neue</quote> Art und Weise bauen</title> <para>Dieser Weg wird für alle aktuellen &os;-Versionen empfohlen. Lesen Sie bitte den Abschnitt <ulink url="../handbook/kernelconfig-building.html">Erstellen und Installation eines angepassten Kernels</ulink> des &os;-Handbuchs, wenn Sie Ihren Kernel auf diese Art und Weise bauen wollen.</para> </sect1> </chapter>