Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende ÜberarbeitungNächste ÜberarbeitungBeide Seiten der Revision | ||
software:linux:realtime:preempt_rt:build_kernel [2019-02-13 13:05] – mgehrig2 | software:linux:realtime:preempt_rt:build_kernel [2019-02-13 16:55] – mgehrig2 | ||
---|---|---|---|
Zeile 8: | Zeile 8: | ||
==== Get the preemt-rt patch ==== | ==== Get the preemt-rt patch ==== | ||
- | Check [[https:// | + | Check [[https:// |
If not, choose the next newer version and download the patch. | If not, choose the next newer version and download the patch. | ||
- | |||
For example:\\ | For example:\\ | ||
If you are running a 4.4.165 kernel choose the following patch:\\ | If you are running a 4.4.165 kernel choose the following patch:\\ | ||
[[https:// | [[https:// | ||
+ | |||
+ | If you want to use a kernel version that is not already installed, please install the generic kernel with the correct version with [[software: | ||
==== Get the Linux sources ==== | ==== Get the Linux sources ==== | ||
* Clone the kernel < | * Clone the kernel < | ||
* Check out the same version as choosen for the patch < | * Check out the same version as choosen for the patch < | ||
+ | |||
+ | ==== Install the compatible generic kernel ==== | ||
+ | For RT-patch v4.4.148-rt166-rc1 install generic kernel 4.4.0 | ||
+ | |||
+ | [[software: | ||
+ | |||
+ | |||
===== Build the kernel ===== | ===== Build the kernel ===== | ||
==== Patch the kernel sources ==== | ==== Patch the kernel sources ==== | ||
* Go into the kenrel source directory | * Go into the kenrel source directory | ||
- | * Applay the patch< | + | * Applay the patch< |
+ | patch -p1 < < | ||
==== Choose the build variant ==== | ==== Choose the build variant ==== | ||
Zeile 30: | Zeile 39: | ||
Additional modules can be built and installed after the kernel is installed. | Additional modules can be built and installed after the kernel is installed. | ||
- | * **a.) Minimal**: This will only build modules which are essential. Some basic function like Wifi drivers may be missing. Some basic Ethernet drive are in the monolitic part of the kernel and will still work | + | |
- | * **b.) Full module support** (recommended ) A normal Linux distribution, | + | * **a.) Full module support** **(recommended)** A normal Linux distribution, |
- | * **c.) Only selected | + | * **b.) Minimal**: This will only build modules |
+ | |||
+ | ==== Configure the kernel ==== | ||
+ | === a.) Full module support === | ||
+ | - Copy the kernel configuration from the generic kernel. | ||
+ | | ||
+ | cp / | ||
+ | - Applay the configuration to the patched kernel sources.< | ||
+ | | ||
+ | |||
+ | |||
+ | === b.) Minimal === | ||
+ | TODO | ||
+ | |||
+ | |||
+ | === Additional configurations === | ||
+ | - Open the configuration menu < | ||
+ | - Enable the fully preemptible kernel (The path may be different depending on the kernel version) | ||
+ | * Processor type and features ---> Preemption | ||
+ | * or | ||
+ | * Kernel options | ||
+ | - Deactivate expert mode | ||
+ | - General setup ---> **[ ] Configure standard kernel features (expert users)** | ||
+ | - Save the configuration and exit the menu | ||
+ | |||
+ | |||
+ | |||
+ | ==== Make and install the kernel ==== | ||
+ | This will going to take about an hour. | ||
+ | |||
+ | - Compile kernel < | ||
+ | - Compile modules < | ||
+ | - Install kernel modules < | ||
+ | - Install kernel < | ||
+ | - Reboot | ||
+ | - Check with '' | ||