yocto构建arm交叉编译工具链

前言全局说明

嵌入式移植,交叉编译工具链是必不可少的


一、说明

1.1 环境:

Ubuntu 22.04 LTS (Linux VirtualBox 6.8.0-87-generic #88~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Tue Oct 14 14:03:14 UTC 2 x86_64 x86_64 x86_64 GNU/Linux)

1.2 系统要求

操作系统:推荐使用Ubuntu LTS版本(20.04/22.04)或Fedora
磁盘空间:至少100GB可用空间(建议200GB以上)
内存:建议8GB以上
处理器:多核处理器(4核以上更佳)

二、安装必要依赖包

2.1 Ubuntu/Debian系统:

sudo apt update
sudo apt install -y gawk wget git diffstat unzip texinfo gcc build-essential \
chrpath socat cpio python3 python3-pip python3-pexpect xz-utils debianutils \
iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev \
python3-subunit mesa-common-dev zstd liblz4-tool file locales vim 

2.2 Fedora系统:

sudo dnf install -y gawk make wget tar bzip2 gzip python3 unzip perl patch \
diffutils diffstat git cpp gcc gcc-c++ glibc-devel texinfo chrpath socat \
perl-Data-Dumper perl-Text-ParseWords perl-Thread-Queue python3-pip \
python3-GitPython xz which SDL-devel xterm rpcgen mesa-libGL-devel perl-FindBin \
perl-File-Compare perl-File-Copy perl-locale zstd lz4 file vim 

三、

3.1 设置locale

sudo locale-gen en_US.UTF-8
export LANG=en_US.UTF-8

四、获取Yocto项目

4.1 方法1:使用repo工具

文件名:

mkdir ~/yocto
cd ~/yocto
repo init -u https://git.yoctoproject.org/git/poky -b <分支名>  # 例如:-b kirkstone
repo sync

4.2 方法2:直接克隆Poky仓库

git clone -b <分支名> git://git.yoctoproject.org/poky.git ~/yocto/poky

六、配置构建参数

6.1 编辑conf/local.conf文件:

设置一些路径

vim conf/local.conf

MACHINE - 目标机器类型(如"qemux86-64", "raspberrypi4"等)
DL_DIR - 下载目录(建议设置为共享目录)
SSTATE_DIR - 共享状态缓存目录
BB_NUMBER_THREADS - 并行编译线程数(通常设置为CPU核心数)
PARALLEL_MAKE - make并行任务数(通常设置为CPU核心数+1)


七、开始构建

7.1 构建核心镜像:

bitbake core-image-minimal

7.1 构建带图形界面的镜像:

bitbake core-image-sato	

八、清理

8.1 清理指定状态

bitbake -c cleansstate <recipe>

8.2 完全清理

bitbake -c cleanall <recipe>


八、目录移动后要修改的文件内容

8.1 修改 bblayers.conf 里路径

vim poky/build/conf/bblayers.conf

8.2 修改 saved_tmpdir 里路径

vim poky/build/tmp/saved_tmpdir

免责声明:本号所涉及内容仅供安全研究与教学使用,如出现其他风险,后果自负。




参考、来源:
https://www.wenxiaobai.com/e674dc9d-aa1b-40ba-8c78-87fd7d2ec092



posted @ 2025-11-14 16:58  悟透  阅读(21)  评论(0)    收藏  举报