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

f_f3c11d8a5fedad43332415cdc13c629e&t=png&o=&s=&v=1639811313.jpg

2、进度条图片logo.png:
f_47821af54daa5eedbc51ac97b0664f11&t=png&o=&s=&v=1639810505.jpg
f_4e320d2ae703664cf97d144146f1b150&t=png&o=&s=&v=1639810515.jpg

二、制作进度条和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文件

f_4da38a11d3a0b3570f5710890e4a8940&t=png&o=&s=&v=1639810524.jpg

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

f_810ac7428be5435484c5a03a28dc7e2c&t=png&o=&s=&v=1639810550.jpg

2、制作进度条

执行命令:./make-image-header.sh logo.png BAR
执行上面的命令会生成一个logo-img.h文件

f_b434ca9b9028cb467ce653054ca5bf5d&t=png&o=&s=&v=1639810573.jpg

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

f_d2e1d0d037a831df1887bc6657de522a&t=png&o=&s=&v=1639810588.jpg

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

f_406d2c2cce92e9cfddb273adda2bf278&t=png&o=&s=&v=1639810601.jpg

修改完成后保存退出 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

f_41d7e8f2922c13ca021aed5b66c5139b&t=png&o=&s=&v=1639810614.jpg

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

f_4578984e393d601308b85b12930b7c68&t=png&o=&s=&v=1639810631.jpg

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

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

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

环境变量使能后,就可以执行以下指令配置交叉编译工具链。
./configure  --host=aarch64-poky-linux

f_aad5e4a5f4fe543a1f35a66054af13e2&t=png&o=&s=&v=1639810644.jpg

执行 make 指令进行编译。
make

f_1cb84e01457c39190ae3b9ef31811434&t=png&o=&s=&v=1639811119.jpg

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

f_dbd0f584741efa82bcf1d3d4a6cff296&t=png&o=&s=&v=1639811185.jpg

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

将编译生成的 psplash 和 psplash-write 文件拷贝到iMX8MQ开发板出厂文件系统/usr/bin 目录下。
原文链接:https://www.forlinx.com/article_view_805.html