|
11 månader sedan | |
---|---|---|
script | 11 månader sedan | |
Dockerfile | 11 månader sedan | |
README.md | 11 månader sedan | |
docker-compose.yml | 11 månader sedan | |
docker_run.sh | 11 månader sedan | |
toolchain.cmake | 11 månader sedan |
该项目是制作一个交叉编译环境,使用arm64容器的apt解决依赖,在使用宿主机上的交叉编译链进行交叉编译。 同时拥有apt的方便和宿主机交叉编译的性能,岂不美哉?
拉取arm64镜像
docker pull --platform linux/arm64 docker.m.daocloud.io/ubuntu:20.04
跑一个临时镜像,用于导出根文件系统
docker run --name arm-temp -d ubuntu:20.04 sleep infinity
docker export arm-temp -o ubuntu_rootfs.tar
将根文件系统解压至宿主机某个文件夹下
sudo mkdir -p /opt/arm/sysroot
sudo tar -xvf ubuntu_rootfs.tar -C /opt/arm/sysroot
启动一个arm64容器
docker compose up -d
toolchain.cmake
将toolchain.cmake中ARM_SYSROOT_PATH
指向该根文件系统,之后便能进行交叉编译:
cmake -B build_arm -DCMAKE_TOOLCHAIN_FILE=/path/to/toolchain.cmake