一、下载psplash源码
下载 psplash:git clone git://git.yoctoproject.org/psplash,会下载到当前目录的psplash文件夹中

forlinx@ubuntu:~/imx8mq/OK8MQ-linux-sdk$ git clone git://git.yoctoproject.org/psplash

Cloning into 'psplash'...

remote: Enumerating objects: 11, done.

remote: Counting objects: 100% (11/11), done.

remote: Compressing objects: 100% (11/11), done.

remote: Total 306 (delta 2), reused 0 (delta 0), pack-reused 295

Receiving objects: 100% (306/306), 128.73 KiB | 4.44 MiB/s, done.

Resolving deltas: 100% (192/192), done.

下载成功后会在当前目录下生成一个psplash文件夹,进入psplash文件夹

1、主图片logo_bmw.png:


v2-0ec2bd95666cde5a0241522bc9c2b2fe_720w.png




2、进度条图片logo.png:

v2-0398b5c8ee406d56ef4d4f0e4bbbf837_720w.png




v2-d9c663024e4b1c58343b3041d02fd063_720w.png




二、制作进度条和LOGO
1、制作进度条和LOGO

需要安装以下库:

sudo apt-get install libgdk-pixbuf2.0-dev

sudo apt-get install build-essential libncurses5-dev

制作logo

执行命令: ./make-image-header.sh logo_bmw.png POKY   //logo_bmw.png是自己要启动的图片

执行上面的命令会生成一个logo_bmw-img.h文件

v2-241151d08463246e8ae001f49877c6a8_720w.png




POKY 参数只是一个变量,它会传入到 logo_bmw-img.h 文件里面,可以打开查看。

vi logo_bmw-img.h

v2-96e85eb7030bfc1083ccfe2d54d389e1_720w.png




2、制作进度条

执行命令:./make-image-header.sh logo.png BAR

执行上面的命令会生成一个logo-img.h文件

v2-901e0f4af90595946ccf900c7b4aa359_720w.png




同样我们打开 logo-img.h 这个文件。它必须是加 BAR 参数的,因为其他地方会

用到这样的宏定义

vi logo-img.h

v2-1b633fa52ac4c5bf18dc8b96d0974114_720w.png




找到psplash.c文件并打开注释掉原来的头文件添加引用你生成的头文件

v2-dc580bc44eae552efeef1241d84c9ccb_720w.png




修改完成后保存退出 psplash.c,返回到源码目录下,制作 autogen.sh 脚本,用于生成 Makefile

3、制作 autogen.sh 脚本

制作 autogen.sh 脚本,用于生成 Makefile,如下

vim autogen.sh

脚本内容以下:

#!/bin/bash

aclocal

autoheader

automake --add-missing

autoconf

赋予可执行权限:chmod 777 autogen.sh

./autogen.sh

v2-dc3f5bcfb757994d1c7c4f88bf9dbd11_720w.png




修改 Makefile.am,将 psplash-poky-img.h 修改成 logo_bmw-img.h,将 psplash-bar-img.h 修

改成 logo-img.h

vi Makefile.am

修改完后的 Makefile.am 如下图所示。

v2-48c60ad539e4b2ad2433a6f23a6d083e_720w.png




修改完 Makefile.am 后保存退出,回到源码目录下。

4、配置交叉编译器环境变量

. /opt/fsl-imx-xwayland/5.4-zeus/environment-setup-aarch64-poky-linux

环境变量使能后,就可以执行以下指令配置交叉编译工具链。

./configure  --host=aarch64-poky-linux

v2-2a7effbae721e412e3cb7fe9245a8b84_720w.png




执行 make 指令进行编译。

make

v2-abba3bf9abf5e6bcd8c10d9abf1388d6_720w.png




编译完成后会在源码目录下生成 psplash 和 psplash-write 文件。

v2-a4efa948b2110339dc64116cc5f27445_720w.png




三、替换出厂系统进度条和 logo

将编译生成的 psplash 和 psplash-write 文件拷贝到iMX8MQ开发板出厂文件系统/usr/bin 目录下。