Linux系统平台上有许多开源的系统构建框架,这些框架方便了开发者进行嵌入式系统的构建和定制化开发,目前比较常见的有Buildroot, Yocto, OpenEmbedded等等。 本文档并不包含Linux BSP系统相关基础知识的介绍,将直接使用米尔发布的myir-image-full提供的的BSP。如需了解BSP文件的制作请查看《Remi Pi_Linux软件开发指南》。 Remi Pi使用的Ubuntu系统基于ubuntu-base-22.04-base-arm64.tar.gz版本制作(下载地址如下),在此版本基础上添加了丰富的系统资源和其他软件资源。 注意:米尔提供的ubuntu系统的登录名为:root 密码为:123456
基于ubuntu base系统在开发过程中所需的一些软硬件环境,包括必要的开发主机环境,必备的软件工具,代码和资料的获取等,具体的准备工作下面将进行详细介绍。 本节将介绍如何搭建适用于瑞萨Remi Pi平台的开发环境,该平台使用的RZ/G系列处理器是多核异构的处理器,RZ/G2L拥有两个2个ARM Cortex A53。通过阅读本章节,您将了解相关硬件工具,软件开发调试工具的安装和使用。并能快速的搭建相关开发环境,为后面的开发和调试做准备。 一般选择在安装Fedora, openSUSE, Debian, Ubuntu, RHEL或者 CentOS等Linux发行版的本地主机上进行,这里推荐的是Ubuntu22.04 64bit桌面版系统,后续开发也是以此系统为例进行介绍。 3. Ubuntu 22.04 文件系统移植 ubuntu-base 是Ubuntu官方构建的ubuntu最小文件系统,包含debain软件包管理器,基础包大小通常只有几十兆,其背后有整个ubuntu软件源支持,ubuntu软件一般稳定性比较好,基于ubuntu-base按需安装Linux软件,深度可定制等,常用于嵌入式rootfs构建。 3.2. 获取源码 3.2.1. 通过wget获取源码
3.3. 准备chroot环境 (如果主机没有安装qemu-user-static工具包,可输入以下命令安装工具包) - PC@system1:~$ sudo apt install qemu-user-static
复制代码
3.3.2. 制作挂载脚本 3.4. 安装包文件 首先使用ch-mount.sh将ubuntu文件系统挂载。 - PC@system1:~$ ./ch-mount.sh -m ./rootfs/
- MOUNTING
- root@system1:/#
- root@system1:/# ls
- bin dev home media opt root sbin sys usr
- boot etc lib mnt proc run srv tmp var
复制代码
3.4.2. 基础包安装 添加log,用户调试ubuntu系统的调试 - root@system1:/# touch /var/log/rsyslog
- root@system1:/# chown syslog:adm /var/log/rsyslog
- root@system1:/# chmod 666 /var/log/rsyslog
- root@system1:/# systemctl unmask rsyslog
- root@system1:/# systemctl enable rsyslog
复制代码
3.4.3. 桌面系统的安装 浏览器和音频安装 - root@system1:/# sudo apt install epiphany-browser
- root@system1:/# sudo apt install xine-ui
复制代码
设置root密码: 123456 - root@system1:/# passwd root
- Enter new UNIX password:
- Retype new UNIX password:
- passwd: password updated successfully
复制代码
一定要执行下面的指令,不然会sudo报错sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set - root@system1:/# chown root:root /usr/bin/sudo
- root@system1:/# chmod 4755 /usr/bin/sudo
复制代码
创建一个用户名为:myir 密码为:123456 - root@system1:/# adduser myir
- perl: warning: Setting locale failed.
- perl: warning: Please check that your locale settings:
- LANGUAGE = (unset),
- LC_ALL = (unset),
- LC_TIME = "zh_CN.UTF-8",
- LC_IDENTIFICATION = "zh_CN.UTF-8",
- LC_TELEPHONE = "zh_CN.UTF-8",
- LC_NUMERIC = "zh_CN.UTF-8",
- LC_ADDRESS = "zh_CN.UTF-8",
- LC_NAME = "zh_CN.UTF-8",
- LC_MONETARY = "zh_CN.UTF-8",
- LC_PAPER = "zh_CN.UTF-8",
- LC_MEASUREMENT = "zh_CN.UTF-8",
- LANG = "zh_CN.UTF-8"
- are supported and installed on your system.
- perl: warning: Falling back to the standard locale ("C").
- Adding user `myir' ...
- Adding new group `myir' (1000) ...
- Adding new user `myir' (1000) with group `myir' ...
- Creating home directory `/home/myir' ...
- Copying files from `/etc/skel' ...
- Enter new UNIX password:
- Retype new UNIX password:
- passwd: password updated successfully
- Changing the user information for myir
- Enter the new value, or press ENTER for the default
- Full Name []: cy
- Room Number []: 604
- Work Phone []:
- Home Phone []:
- Other []:
- Is the information correct? [Y/n] y
复制代码
设置权限 - sudo vi /etc/sudoers
- root ALL=(ALL:ALL) ALL
- myir(根据自己添加的用户来添加) ALL=(ALL:ALL) ALL
复制代码
- root@system1:/# export LC_ALL=C
复制代码
设置hosts和主机名称,添加127.0.0.1 myir - root@system1:/# vi /etc/hosts
复制代码
修改passwd文件 - root@system1:/# vi /etc/passwd
- 找到这一行:_apt:x:100:65534::/nonexistent:/usr/sbin/nologin
- 修改为:_apt:x:0:65534::/nonexistent:/usr/sbin/nologin
复制代码
配置网卡接口,添加如下内容 - root@system1:/# vi /etc/network/interfaces
- auto eth0
- iface eth0 inet dhcp
复制代码
以上步骤操作完成后即可卸载系统。直接在系统中输入exit退出系统,并使用命令来卸载 - root@system1:/# exit
- exit
- PC@system1:~$
- PC@system1:~$ ./ch-mount.sh -u ubuntu-rootfs/
- UNMOUNTING
复制代码
3.5.1. 制作ext4格式文件 请用户根据实际情况来决定大小,这里以3.3G大小举例制作。 - PC@system1:~$ mkfs.ext4 ubuntu22.04.ext4
复制代码
将ubuntu-rootfs目录中的内容复制到挂载的文件系统中,然后卸载。 - PC@system1:~$ sudo cp -avrf ubuntu-rootfs/* temp
- PC@system1:~$ sudo umount temp
复制代码
先将下载资源的03_Tools/myir tools目录下的RemiPi_SDUpdate.tar.bz2解压到虚拟机中(用户请根据自己实际情况解压) - PC@system1:~$ tar -xf RemiPi_SDUpdate.tar.bz2
- PC@system1:~$ cd RemiPi_SDUpdate/renesas-sd
- PC@system1:~/RemiPi_SDUpdate/renesas-sd$ ls
- image README.md rzg2_bsp_scripts fat16 output rootfs
复制代码
修改Manifest文件 - PC@system1:~/RemiPi_SDUpdate/renesas-sd/rootfs/home/root/g2l_images$ cat Manifest
- bl2file="bl2_bp-myir-remi-1g_pmic.bin"
- fipfile="fip-myir-remi-1g_pmic.bin"
- imagefile="Image"
- dtbfile="*.dtb"
- rootfsfile="ubuntu22.04.ext4"
- ledname="162"
复制代码
最后进入到下面目录,执行制作镜像的脚本即可。 - PC@system1:~/RemiPi_SDUpdate/renesas-sd$ cd rzg2_bsp_scripts/image_creator/
- PC@system1: ~/RemiPi_SDUpdate/renesas-sd/rzg2_bsp_scripts/image_creator$ ./create_image.sh myir_config.ini
复制代码
4. 认识LXDE LXDE是一个轻量级和快速的桌面环境。它被设计为用户友好和占用资源少,同时保持资源使用率低。LXDE使用更少的内存和CPU来尽可能地展现功能丰富的桌面环境。与其它的桌面环境不同,LXDE努力成为模块化的桌面环境,所以每个组件可以独立使用。这使得移植LXDE不同分布和平台更容易。 除了这些核心组件外,LXDE还有其他一些辅助工具,如LXAppearance(用于更改主题和图标)、LXTask(任务管理器)等。 4.2. 启动LXDE 登录成功后,由于默认背景是黑色的,可以点击鼠标右键后选择Desktop Preferences->Appearance->Wallpaper(/usr/share/lxde/wallpapers/lxde_blue.jpg)来选择背景图片,如图4-2: 图4-2:lxde背景图片修改 图4-3:lxde背景图片
|
网友评论