搭建开发环境
安装VWware
软件路径:ftp://192.168.0.110/0_Hardware/STM32MP1/system_ubuntu/VMware%20workstation/VMware-workstation-full-12.1.0-3272444.exe
下载安装即可
新建虚拟机
主界面创建虚拟机,按照向导创建虚拟机,CPU核心更具需要选择,内存建议2G以上不超过6G,硬盘大小官方建议大于300G,其他按照建议参数选择即可,安装好后,启动虚拟机。
## 替换软件源为国内软件源
执行如下代码,nano是一个文本编辑器,可以使用gedit或vi代替。
cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo nano /etc/apt/sources.list
//从以下源复制到sources.list中
#添加阿里源
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
//保存上述文本,执行以下代码更新软件源
sudo apt-get update
sudo apt-get upgrade
设置mmc允许16个分区
默认情况下,在Linux系统上,mmc上最多允许8个分区。所有程序包(入门程序包,…)需要10个以上的分区用于存储设备。为了将每个设备的分区数扩展到16,必须在modprobe中添加以下选项:
PC $> echo 'options mmc_block perdev_minors=16' > /tmp/mmc_block.conf
PC $> sudo mv /tmp/mmc_block.conf /etc/modprobe.d/mmc_block.conf
配置代理
export http_proxy=http://local_proxy_ip:local_prot
export https_proxy=https://local_proxy_ip:local_prot
此处使用本地代理,将终端代理到本地端口。本地端口需要通过VPN代理到远程主机。不能直接在终端代理到远程主机。
使用wget -q www.google.com && echo "Internet access over HTTP/HTTPS is OK !" || echo "No internet access over HTTP/HTTPS ! You may need to set up a proxy."
测试是否通过代理。如返回OK则代理成功。
安装需要的库
先更新软件库列表sudo apt update
,再使用命令sudo apt-get install XXX
,XXX代表需要安装的软件包,分别安装以下软件包
bison flex//语法分析器生成器
sed // 编辑器
wget curl //下载器
git //版本控制
coreutils //shell
unzip //解压zip
texi2html // 转Texinfo 到 HTML
texinfo //文档系统
docbook-utils //脚本集合
gawk //awk编程
python //Python2
python3 //Python3
diffstat //linux 基础命令
help2man //help --version生成手册页面工具
make //
gcc //
build-essential //提供编译程序必须软件包的列表信息
g++ //
desktop-file-utils //处理桌面信息的程序
chrpath //
libxml2-utils //
xmlto //
default-jre //java环境
注意:chrpath g++ gawk gcc git make diffstat texinfo rpcgen 为必须安装的库。\
- 若rpcgen安装不了,可按照以下方法安装,其他软件如如果也出现无法安装的情况,同样可以参考如下方式。
wget https://github.com/thkukuk/rpcsvc-proto/releases/download/v1.4/rpcsvc-proto-1.4.tar.gz
tar xf rpcsvc-proto-1.4.tar.gz
cd rpcsvc-proto-1.4
./configure
make
make install
以上命令解释:
wget 从git上下载软件包,某些软件包可能不是从git上下载,可以在win上下载该软件包,再通过文件传输工具如FTP或者VWware的管理工具,此处使用winSCP工具通过FTP传输(winSCP使用方法在下方)。
tar解压文件。
cd 切换到解压目录下
./configure 执行配置文件
make 编译
make install 安装
- winSCP工具使用指南:
虚拟机配置
输入ifconfig
查看虚拟机ip地址,例如192.168.17.132字样
输入sudo apt install vsftpd
安装ftp服务
输入service vsftpd start
启动vsftpd服务
如果主机拒绝客户端访问可以修改ftp配置文件
sudo nano /etc/vsftpd/vsftpd.conf
write_enable=YES # 允许本地用户对FTP服务器文件具有写权限
按照向导安装好软件,软件路径为:ftp://192.168.0.110/0_Hardware/STM32MP1/system_ubuntu/tools/WinSCP-5.15.5-Setup.exe
新建站点如下配置:
文件协议FTP(如果FTP不通就使用SFTP),不加密,主机ip(如192.168.17.132),端口号22, 用户名和密码为虚拟机的登录名和密码。配置好之后,点击登录即可。
编译镜像
配置镜像文件
运行如下代码部署环境,然后同意协议
unzip layers.zip
DISTRO=openstlinux-weston MACHINE=stm32mp1 source layers/meta-st/scripts/envsetup.sh
tree
.
└── conf
├── bblayers.conf
├── conf-notes.txt
├── local.conf
├── site.conf
└── templateconf.cfg
1 directory, 5 files
执行完之后,系统将自动进入build目录。
本地配置文件路径build-<distro>-<machine>/conf/local.conf
,包含所有本地用户配置
顶层配置文件路径build-<distro>-<machine>/conf/bblayers.conf
,告知BitBake构建的层
layer已经下载好了,路径:ftp://192.168.0.110/0_Hardware/STM32MP1/layers.zip
,可通过ftp传输到虚拟机。
编译
执行下面代码开始编译
bitbake st-image-weston