iMX6Q平台用户自动登录,开机自启及QT程序加载到主界面解决思路

本文以飞凌嵌入式iMX6系列平台讲解,适用于飞凌OKMX6DL/Q-C平台Linux3.0.35操作系统,其它平台可参考使用,本文主要介绍了 iMX6平台用户自动登录,开机自启以及QT程序加载到主界面三个问题的解决思路,希望能够帮助用户使用使用iMX6Q/DL 平台。

第一章 平台自动登录

目前用户资料中提供的文件系统在iMX6Q开发板上启动后需要用户登录才能够进行操作,有些客户根据自己的实际情况想要实现用户自动登录,不需要经过手动输入,小编测试了使用以下方法可以达到这样的目的。

修改方法如下:

在文件系统的 bin 目录下存在自动登录的软连接 login,登录验证则是由etc/rc.d/rc_mxc.S 脚本实现的。要实现自动登录可以给该链接传递参数,使其直接登录 root 账户。

修改rc_mxc.S 使其内容如下:
#!/bin/bash
#
/bin/login -f root          //直接传递 root 登陆的参数
/*
if grep -sq ttymxc0 /proc/cmdline; then
/sbin/getty -L ttymxc0 115200 vt100
elif grep -sq ttymxc1 /proc/cmdline; then
/sbin/getty -L ttymxc1 115200 vt100
elif grep -sq ttymxc2 /proc/cmdline; then
/sbin/getty -L ttymxc2 115200 vt100
elif grep -sq ttymxc3 /proc/cmdline; then
/sbin/getty -L ttymxc3 115200 vt100
else
sleep 100000
*/
fi

如果是在iMX6开发板上操作,修改完成保存该文件后执行一下sync命令,再重启i.MX6开发板即可;还可以在用iMX6户资料中的文件系统中修改,修改后重新打包成可烧写的格式,重新烧写即可。


第二章 开机自启动QT应用程序

以下方法是如何将自己做的应用程序设置为iMX6Q开发板启动直接运行,我们以music程序为例,假设该文件放到了/opt/qt4.8.5/apps 路径下,客户自己操作时请根据实际的文件名和路径。


修改开机启动脚本

OKMX6 平台Qt 系统开机后默认启动桌面程序 fluidlauncher,若要改成默认启动其他 Qt应用程序,修改文件系统/etc/rc.d/apps.sh文件,如果在iMX6Q开发板上操作,在超级终端执行以下命令:

root@freescale /$ vi /etc/rc.d/apps.sh

通过vi命令将apps.sh文件修改为以下内容:

#!/bin/sh
#app
#cd /opt/qt4.8.5/demos/embedded/fluidlauncher
#./fluidlauncher -qws &
cd /opt/qt4.8.5/apps
./music -qws &
#apps

保存该文件后,执行sync保存命令;重启就可以看到默认启动了刚设置的应用程序。也可以修改文件系统源码下的etc/rc.d/apps.sh 文件,改动方法同上,然后重新制作文件系统映像并烧写到平台。


第三章 QT程序加载到主界面

以下的方法是如何将自己的QT程序加载到桌面的主界面上。我们以添加music 程序为例:

1、在文件系统中进行修改

修改opt/qt4.8.5/demos/embedded/fluidlauncher/config.xml 文件:
打开该文件后,在

<example filename="../../../apps/backlight" name="backlight test"image="screenshots/apps/backlight.png"/>

的下一行添加

<example filename="../../../apps/music"name="MUSIC test"image="screenshots/apps/music.png"/> 添加完成后记得保存。 

2、添加应用的桌面图标

在opt/qt4.8.5/demos/embedded/fluidlauncher/screenshots/apps 中添加 music.png图片,用作主界面识别 music 程序用。 

3、添加可执行程序

在opt/qt4.8.5/apps 中添加自己编译的可执行文件 music,并给可执行文件用chmod 命令赋予可执行权限。

4、保存并应用

如果以上操作是在开发板上进行的,完成后需执行 sync 保存,重启开发板此时打开主界面,即可看到自己添加的music 可执行程序。也可以在用户资料的文件系统中修改,修改完成后重新打包并烧写到iMX6Q开发板上即可。