English / Deutsch | Print version Plop Linux  

<< Previous

Table of Contents

Next >>
Banana Pi

Raspberry Pi, GPU userland apps and camera tools

This section describes how you run install Plop Linux on the Raspberry Pi, how you cross compile the Linux Kernel for the Raspberry Pi and how you compile/install some Raspberry Pi related tools.

Supported Raspberry Pi models: 1-4

Install Plop Linux

Plop Linux is for advanced Linux users. The install documentation does not describe every step with commands. When it's too difficult for people then I will update this page with more details.

Boot a Linux on a computer with a SD card reader.

Download ploplinux-desktop-24.2-arm.tar.gz and raspberry-pi-boot.tar.gz

• On the SD Card, create partition 1 with about 150 MB. Partition type: 0x0C (FAT partition). This will be the boot partition

• On the SD Card, create partition 2 for Plop Linux. Minimum size is 7 GB (or 3 GB without /opt).

• Create a FAT file system on the first partition 'mkfs -F 32 /dev/PARTITION1' (the boot partition).

Note: /dev/PARTITION1 is only a placeholder. You have to set the device node of your partition. Example: /dev/sdd1

• Create an Ext3 file system on the second partition 'mkfs.ext3 /dev/PARTITION2' (the Plop Linux partition).

Note: /dev/PARTITION2 is only a placeholder. You have to set the device node of your partition. Example: /dev/sdd2

• Mount the second Partition (Plop Linux partition) to '/mnt'.

• Extract the ploplinux-desktop-24.2-arm.tar.gz archive to '/mnt'.

• Move the directories in '/mnt/ploplinux-desktop-24.2-arm/' one directory up that they became the root directories on the Plop Linux partition.

• Remove the empty '/mnt/ploplinux-desktop-24.2-arm/' directory.

• Mount the first partition (boot partition) to '/mnt/boot'.

• Extract the raspberry-pi-boot.tar.gz archive to '/mnt'.

• A few important files (the default settings should be ok):

Modify boot parameters in the file '/mnt/boot/cmdline.txt'.

Edit '/mnt/etc/fstab' to your system setup.

Edit the Raspberry Pi section in '/mnt/etc/rc.local'.

• Unmount '/mnt/boot'.

• Unmount '/mnt'.

Now boot your Raspberry Pi with the SD Card. Continue with the personalisation of your fresh system. See here for general Plop Linux Desktop configurations and here for ARM related configurations.

Raspberry Pi 4 - Boot 32 bit / 64 bit

The Raspberry Pi 4 has a 64 bit CPU. To boot with the 32 bit kernel, write into '/boot/config.txt'


To boot with the 64 bit kernel use


Raspberry Pi 4 - No HDMI output

Add at the beginning of the file '/boot/config.txt' the following line to activate the HDMI output.


Compile the Linux Kernel

Either compile the Linux Kernel on your Raspberry Pi (slow) or you have to setup a cross compile environment (see here) on your computer.

• When you use the cross compile environment, then start the 'shell.sh' script.

• Download the Linux Kernel Source Code for Raspberry Pi and extract it.

Use git: git clone --depth 1 git://github.com/raspberrypi/linux.git

Or download linux.tar.xz

• Change to the Linux Kernel directory 'cd linux' and setup base configuration

For Raspberry Pi 1: make bcmrpi_defconfig
Or download the .config used by Plop Linux and copy the file to the 'linux' directory.

For Raspberry Pi 2: KERNEL=7 make bcm2709_defconfig

Note: To add additional configurations run 'make menuconfig'.

• To compile the kernel run 'make && make modules_install'

Note: 'make modules_install' installs the kernel modules. When you compile on the Raspberry Pi then the modules will be installed to '/lib/modules'. When you compile in the cross compile environment then you find the modules in the 'kernel-modules/' directory where you started the 'shell.sh' script.

• You find the Linux Kernel file in the 'arch/arm/boot/' directory. The file name is 'zImage'. Rename it to 'kernel.img'.

• Copy the 'kernel.img' file to the boot partition of your Raspberry Pi.

Note: When you compile in a cross compile environment, then an easy way to transfer the files to your running Raspberry Pi is using sshfs.
Mount example (Rasperry Pi IP: sshfs root@ /mnt

GPU userland apps and camera tools

Compile the tools on your Raspberry Pi or in a cross compile environment.

Get the latest version from the git repository or download the package raspberry-pi-tools.tar.gz and extract it. You can also download the individual files from here.

To compile and install the GPU userland and the Python camera modules at once run the script '000_all'.

sh 000_all

The build scripts are

010_b_setuptools: Install the Python setup tools

020_b_picamera: Install the Python Raspberry Pi Camera modules

030_b_userland: Compile, patch and install the GPU userland apps (raspistill, raspivid, raspiyuv, ...)

Finally copy the file '.bash_RaspberryPI' to your home directory and add the line

. ~/.bash_RaspberryPI

to the end of your '.bash_profile' file.

This script adds environment variables for the userland apps. Log out and log in to activate the environment variables.

Additional infos

000_src/userland-plop.patch: Patch the userland to fix the vcos.h problems. It also creates a new build script.

001_git-userland: Get the latest GPU userland source code.

Additional resources


© 2024 by Elmar Hanlhofer