一、下载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:
c0fd416f443459ce086f2db58424ede9.png

2、进度条图片logo.png:
f763fc582d2a251865227190f94ded9a.png

cbf1c9cd7e385135de6ad7e60e2482f6.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文件
7580ee930bff2ea43e9c1cad596784ab.png

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

2、制作进度条
执行命令:./make-image-header.sh logo.png BAR
执行上面的命令会生成一个logo-img.h文件
65a9380c2625c3a8a08caa5f3a08442b.png

同样我们打开 logo-img.h 这个文件。它必须是加 BAR 参数的,因为其他地方会
用到这样的宏定义
vi logo-img.h
8872fb8ad26ba4d3c8399abcc274e750.png

找到psplash.c文件并打开注释掉原来的头文件添加引用你生成的头文件
7d2c79cacdb51251dd70cbcfbb84751a.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
395a10524d03c68ec842eb011f4d9ef7.png

修改 Makefile.am,将 psplash-poky-img.h 修改成 logo_bmw-img.h,将 psplash-bar-img.h 修
改成 logo-img.h
vi Makefile.am
修改完后的 Makefile.am 如下图所示。
502430d10cef93d71da99e99e58eeae3.png

修改完 Makefile.am 后保存退出,回到源码目录下。
4、配置交叉编译器环境变量
. /opt/fsl-imx-xwayland/5.4-zeus/environment-setup-aarch64-poky-linux
环境变量使能后,就可以执行以下指令配置交叉编译工具链。
./configure --host=aarch64-poky-linux
b2053f8851a017bfc659bc666957af8a.png

执行 make 指令进行编译。
make
b939989c7c4d414d7ce19f4f3174bfeb.png

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

三、替换出厂系统进度条和 logo
将编译生成的 psplash 和 psplash-write 文件拷贝到iMX8MQ开发板出厂文件系统/usr/bin 目录下。