Fedora Kernel kompilieren: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
|||
(10 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
<div style="margin:0; margin-top:10px; border:3px solid #FF3131; padding: 1em 1em 1em 1em; background-color:#FFF1E3; margin-top:10px;"> | |||
{|style="width:100%" | |||
|style="width:90px"|[[Bild:Icon_Loeschantrag.png|80px|left]] | |||
|'''Dieser Artikel wurde zur Löschung vorgeschlagen.'''<br> | |||
Begründung: Veraltet, unvollständig oder nur Test?.<br> | |||
--[[Benutzer:Mornsgrans|Mornsgrans]] ([[Benutzer Diskussion:Mornsgrans|Diskussion]]) 20:52, 8. Mär. 2015 (CET) | |||
|} | |||
</div> | |||
[[Category:Löschkandidaten]] | |||
Anleitung zum erstellen eines selbstgebaute kernel-rpm mit phc-support bei Fedora 17. (Benutzte Quelle: http://fedoraproject.org/wiki/Building_a_custom_kernel | Anleitung zum erstellen eines selbstgebaute kernel-rpm mit phc-support bei Fedora 17. (Benutzte Quelle: http://fedoraproject.org/wiki/Building_a_custom_kernel | ||
Zeile 21: | Zeile 32: | ||
==Quellcode download== | ==Quellcode download== | ||
{{Admon/warning |Do Not Build Packages as <code>root</code>. | Building packages as <code>root</code> is inherently dangerous and not required, even for the kernel. The following instructions allow any normal user to install and build kernels from the source packages.}} | {{Admon/warning |Do Not Build Packages as <code>root</code>. | Building packages as <code>root</code> is inherently dangerous and not required, even for the kernel. The following instructions allow any normal user to install and build kernels from the source packages.}} | ||
Download der <code>kernel-<version>.src.rpm</code> Datei: | |||
<pre>cd ~/rpmbuild</pre> | |||
<pre>yumdownloader --enablerepo=updates-source --source kernel</pre> | |||
==Build dependencies installieren== | |||
<pre>su -c 'yum-builddep kernel-<version>.src.rpm'</pre> | |||
==Kernel-Quellcode ins repo laden== | |||
<pre>rpm -Uhv kernel-<version>.src.rpm</pre> | |||
=Kernel kompilieren= | |||
==Setup== | |||
Auspacken des Quellcodes: | |||
<pre>cd ~/rpmbuild/SPECS | |||
rpmbuild -bp --target=$(uname -m) kernel.spec | |||
</pre> | |||
Der Kernel-Quellcode befindet sich jetzt hier: <code>~/rpmbuild/BUILD/kernel-<version>/linux-<version>.<arch></code> | |||
==Kernel patchen== | |||
Kopieren des original-Quellcode-Baum zur Patch erstellung | |||
<pre> | |||
export arch=x86_64 # replace x86_64 with your arch | |||
export ver=3.3 # replace 3.3 with your kernel version | |||
export fedver=fc17 # replace fc17 with your fedora version | |||
cp -r ~/rpmbuild/BUILD/kernel-$ver.$fedver/linux-$ver.$arch ~/rpmbuild/BUILD/kernel-$ver.$fedver.orig | |||
cp -al ~/rpmbuild/BUILD/kernel-$ver.$fedver.orig ~/rpmbuild/BUILD/kernel-$ver.$fedver.new | |||
</pre> | |||
OK, Anleitung funzt net mehr bei fc17. Also Plan B. Kernel 3.2 und 3.3 nutzen die gleiche drivers/cpufreq/acpi-cpufreq.c. Es reicht daher diese Datei durch eine gepachte zu ersetzen. | |||
<pre> | |||
cp ~/rpmbuild/phc-intel.c ~/rpmbuild/BUILD/kernel-3.3.fc17/linux-3.3.0-1.fc17.x86_64/drivers/cpufreq/acpi-cpufreq.c | |||
cp ~/rpmbuild/phc-intel.c ~/rpmbuild/BUILD/kernel-3.3.fc17/vanilla-3.3/drivers/cpufreq/acpi-cpufreq.c | |||
</pre> | |||
==Build-Dateien vorbereiten== | |||
1. | |||
<pre>cd ~/rpmbuild/SPECS | |||
</pre> | |||
2. Editieren der Datei <code>kernel.spec</code>. | |||
<br> | |||
3. Dem Kernel einen unique-Namen geben. | |||
Change this line: | |||
<pre> | |||
#% define buildid .local | |||
</pre> | |||
To this (note the extra space is removed in addition to the pound sign): | |||
<pre> | |||
%define buildid .<custom_text> | |||
</pre> | |||
==Kernel bauen== | |||
<pre>rpmbuild -bb --with baseonly --with firmware --without debuginfo --target=`uname -m` kernel.spec | |||
</pre> | |||
=Frisch gebackenes Custom-Kernel.rpm installieren= | |||
Die frisch erstellten rpm finden sich in $HOME/rpmbuild/RPMS/<arch>/kernel-<version>.<arch>.rpm | |||
Installieren mit | |||
<pre>su -c 'yum localinstall RPMS/x86_64/kernel-*.rpm'</pre> | |||
[[Category:Linux]] | |||
[[Category:Fedora]] |
Aktuelle Version vom 8. März 2015, 19:52 Uhr
Dieser Artikel wurde zur Löschung vorgeschlagen. Begründung: Veraltet, unvollständig oder nur Test?. |
Anleitung zum erstellen eines selbstgebaute kernel-rpm mit phc-support bei Fedora 17. (Benutzte Quelle: http://fedoraproject.org/wiki/Building_a_custom_kernel
Vorbereitung
Build Umgebung einrichten
Es werden folgende Pakete benötigt:
rpmdevtools
yum-utils
ncurses-devel
su -c 'yum install rpmdevtools yum-utils ncurses-devel'
Anschließend muss die RPM package building environment im Home-Verzeichnis erstellt werden:
rpmdev-setuptree
Dieses Komando erstellt die Verzeichnisse:
${HOME}/rpmbuild/SOURCES
,
${HOME}/rpmbuild/SPECS
,
${HOME}/rpmbuild/BUILD
.
Quellcode download
Vorlage:Admon/warning
Download der kernel-<version>.src.rpm
Datei:
cd ~/rpmbuild
yumdownloader --enablerepo=updates-source --source kernel
Build dependencies installieren
su -c 'yum-builddep kernel-<version>.src.rpm'
Kernel-Quellcode ins repo laden
rpm -Uhv kernel-<version>.src.rpm
Kernel kompilieren
Setup
Auspacken des Quellcodes:
cd ~/rpmbuild/SPECS rpmbuild -bp --target=$(uname -m) kernel.spec
Der Kernel-Quellcode befindet sich jetzt hier: ~/rpmbuild/BUILD/kernel-<version>/linux-<version>.<arch>
Kernel patchen
Kopieren des original-Quellcode-Baum zur Patch erstellung
export arch=x86_64 # replace x86_64 with your arch export ver=3.3 # replace 3.3 with your kernel version export fedver=fc17 # replace fc17 with your fedora version cp -r ~/rpmbuild/BUILD/kernel-$ver.$fedver/linux-$ver.$arch ~/rpmbuild/BUILD/kernel-$ver.$fedver.orig cp -al ~/rpmbuild/BUILD/kernel-$ver.$fedver.orig ~/rpmbuild/BUILD/kernel-$ver.$fedver.new
OK, Anleitung funzt net mehr bei fc17. Also Plan B. Kernel 3.2 und 3.3 nutzen die gleiche drivers/cpufreq/acpi-cpufreq.c. Es reicht daher diese Datei durch eine gepachte zu ersetzen.
cp ~/rpmbuild/phc-intel.c ~/rpmbuild/BUILD/kernel-3.3.fc17/linux-3.3.0-1.fc17.x86_64/drivers/cpufreq/acpi-cpufreq.c cp ~/rpmbuild/phc-intel.c ~/rpmbuild/BUILD/kernel-3.3.fc17/vanilla-3.3/drivers/cpufreq/acpi-cpufreq.c
Build-Dateien vorbereiten
1.
cd ~/rpmbuild/SPECS
2. Editieren der Datei kernel.spec
.
3. Dem Kernel einen unique-Namen geben.
Change this line:
#% define buildid .local
To this (note the extra space is removed in addition to the pound sign):
%define buildid .<custom_text>
Kernel bauen
rpmbuild -bb --with baseonly --with firmware --without debuginfo --target=`uname -m` kernel.spec
Frisch gebackenes Custom-Kernel.rpm installieren
Die frisch erstellten rpm finden sich in $HOME/rpmbuild/RPMS/<arch>/kernel-<version>.<arch>.rpm
Installieren mit
su -c 'yum localinstall RPMS/x86_64/kernel-*.rpm'