|Deletions are marked like this.||Additions are marked like this.|
|Line 2:||Line 2:|
|The following instructions describe how to download and build the [[CurrentRelease|latest released version]] of LITMUS^RT^. If you intend to use LITMUS^RT^ for development, you should use our [[Repositories|source code repositories]] instead.||The following instructions describe how to download and build the [[Releases|latest released version]] of LITMUS^RT^. If you intend to use LITMUS^RT^ for development, you should use our [[Repositories|source code repositories]] instead.|
The following instructions describe how to download and build the latest released version of LITMUSRT. If you intend to use LITMUSRT for development, you should use our source code repositories instead.
The extension to the Linux kernel is released as a patch against the Linux kernel. To install the LITMUSRT kernel, first download the Linux kernel 3.0 and untar it in a directory of your choice (hereafter referred to as $DIR). Second, apply the LITMUSRT patch (download the current version) and configure, compile, and install the kernel as usual. The patch is -p1 applicable.
To summarize, the LITMUSRT kernel can be obtained, patched, and compiled with the following commands:
cd $DIR # get Linux 3.0 wget http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.0.tar.bz2 tar xjf linux-3.0.tar.bz2 wget http://www.litmus-rt.org/releases/2012.3/litmus-rt-2012.3.patch mv linux-3.0 litmus-rt # apply the LITMUS RT patch cd litmus-rt patch -p1 < ../litmus-rt-2012.3.patch # create a working kernel configuration # - select HZ=1000 # - enable in-kernel preemptions # - disable NO_HZ # - don't use power management options like frequency scaling # - disable support for group scheduling # - disable "Write protect kernel read-only data structures" (in kernel debug) make menuconfig # compile the kernel make bzImage make modules # proceed to install kernel, build initrd, etc. ...
When configuring the kernel, note that there is a menu (at the very end of the list) with LITMUSRT-specific configuration options. For reference, we provide a sample 64-bit configuration that is known to work under KVM.
The Userspace Library
The user-space library for real-time tasks, liblitmus, depends on the LITMUSRT kernel kernel and provides its own build system. Run make help for instructions. Note that you will have to create a .config file in the library directory to point the build system to the kernel sources. For reference, we provide a sample liblitmus configuration file.
To summarize, the liblitmus can be obtained and compiled with the following commands:
cd $DIR wget http://www.litmus-rt.org/releases/2012.3/liblitmus-2012.3.tgz tar xzf liblitmus-2012.3.tgz cd liblitmus wget http://www.litmus-rt.org/releases/2012.3/liblitmus-config mv liblitmus-config .config make
The Feather-Trace tools (also known as ft_tools) depend on the liblitmus build system. Before the Feather-Trace toolscan be built, you must have successfully compiled liblitmus first. For reference, we provide a sample ft_tools configuration file.
To summarize, the Feather-Trace tools can be obtained and compiled with the following commands:
cd $DIR wget http://www.litmus-rt.org/releases/2012.3/ft_tools-2012.3.tgz tar xzf ft_tools-2012.3.tgz cd ft_tools wget http://www.litmus-rt.org/releases/2012.3/ft_tools-config mv ft_tools-config .config make