Использование Docker для создания среды компиляции архитектуры Linux ARM64.

【Предисловие】

Мне не хотелось заморачиваться со средой кросс-компиляции, но я действительно терпеть не мог медленную скорость компиляции проектов на A53, поэтому задумался о настройке среды разработки Arm Linux через Docker, чтобы скомпилированные проекты можно было напрямую скопировать в А53 и запустить. Я просто сделал то, что обещал сделать, я наступил на некоторые ловушки, но в конце концов мне это удалось. Вот краткая запись, сможете ли вы ее понять или нет, зависит от вашей собственной судьбы.

 

【Сухая информация】

1. Создайте нового пользователя-администратора (поскольку пользователь системы Arm является администратором):

sudo su
adduser admin

(全程点默认)

2. Переключиться на этого пользователя

su admin

3. Удалите пользователя-администратора.

deluser admin

4. Установите необходимые среды:

sudo apt install qemu-user qemu-user-static gcc-aarch64-linux-gnu binutils-aarch64-linux-gnu  build-essential

5. Создайте среду ros в докере.

sudo docker run --rm --privileged multiarch/qemu-user-static --reset -p yes

sudo docker run -it --name ros-arm --user=$(id -u $USER):$(id -g $USER) --env="DISPLAY" --net=host --workdir="/home/$USER" --volume="/home/$USER:/home/$USER" --volume="/etc/group:/etc/group:ro" --volume="/etc/passwd:/etc/passwd:ro" --volume="/etc/shadow:/etc/shadow:ro" --volume="/etc/sudoers.d:/etc/sudoers.d:ro" --volume="/tmp/.X11-unix:/tmp/.X11-unix:rw" arm64v8/ros:kinetic

sudo docker exec -u 0 -it ros-arm sed -i 's/ports.ubuntu.com/mirrors.bfsu.edu.cn/g' /etc/apt/sources.list

sudo docker exec -u 0 -it ros-arm apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F42ED6FBAB17C654

sudo docker exec -u 0 -it ros-arm apt update

sudo docker exec -u 0 -it ros-arm apt install ros-kinetic-cv-bridge

sudo docker exec -u 0 -it ros-arm apt install ros-kinetic-move-base-msgs

sudo docker exec -u 0 -it ros-arm apt install libzmq3-dev

sudo docker exec -u 0 -it ros-arm apt install ros-kinetic-tf

6. Войдите в контейнер и начните выступление.

sudo docker start ros-arm
sudo docker exec -it ros-arm bash

7. Советы

При разработке кода вы можете напрямую скопировать код администратору, мне не нужно учить вас, как переключать пользователей на ПК.

【Постскриптум】

поставь лайк! ! ! Не теряйтесь!

Supongo que te gusta

Origin blog.csdn.net/weixin_39538031/article/details/131007362
Recomendado
Clasificación