IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> QEMU用户模式ARM仿真 - qemu-arm-static -> 正文阅读

[嵌入式]QEMU用户模式ARM仿真 - qemu-arm-static

https://blog.csdn.net/yanceylu/article/details/108570423

嵌入式开发有时会在ARM设备上使用ubuntu文件系统。开发者常常会面临这样一个问题,想预先交叉编译并安装一些应用程序,但是交叉编译的环境配置以及依赖包的安装十分繁琐,并且容易出错。想直接在目标板上进行编译和安装,但是ARM的资源和处理能力有限,会非常耗费时间。在这里给大家推荐一个ubuntu下好用的工具qemu-arm-static,这是QEMU用户模式下的ARM仿真器。

通过qemu-arm-static,我们在x86的ubuntu PC机上,可以模拟ARM处理器,就像运行在ARM上一样进行各种操作。这样既实现了ARM环境,又利用了x86 PC的处理能力

  1. Install 18.04 base
$ mkdir ~/rootfs && cd ~/rootfs 
$ wget http://cdimage.ubuntu.com/ubuntu-base/releases/18.04.2/release/ubuntu-
base-18.04.2-base-arm64.tar.gz 
$ mkdir ubuntu-rootfs 
$ tar -xvf ubuntu-base-18.04.2-base-arm64.tar.gz -C ubuntu-rootfs 
$ cd ubuntu-rootfs 
$ ls 

4.Install qemu-user-static on PC to simulate arm64 environment

$ apt-get install qemu-user-static 
$ cp /usr/bin/qemu-aarch64-static  usr/bin 
$ cp -b /etc/resolv.conf etc/ 

5.Simulate arm64 environment

$ cd ../ 

$ vi ch-mount.sh 

(copy the content to ch-mount.sh)

#!/bin/bash 
#   
function mnt() { 
    echo "MOUNTING" 
    sudo mount -t proc /proc ${2}proc 
    sudo mount -t sysfs /sys ${2}sys 
    sudo mount -o bind /dev ${2}dev 
    sudo mount -o bind /dev/pts ${2}dev/pts    
    sudo chroot ${2} 
} 
function umnt() { 
    echo "UNMOUNTING" 
    sudo umount ${2}proc       sudo umount ${2}sys 
    sudo umount ${2}dev/pts 
    sudo umount ${2}dev 
} 
if [ "$1" == "-m" ] && [ -n "$2" ] ; 
then 
   mnt $1 $2 
elif [ "$1" == "-u" ] && [ -n "$2" ]; 
then 
    umnt $1 $2 
else 
    echo "" 
    echo "Either 1'st, 2'nd or both parameters were missing" 
    echo "" 
    echo "1'st parameter can be one of these: -m(mount) OR -u(umount)" 
    echo "2'nd parameter is the full path of rootfs directory(with trailing '/')" 
    echo "" 
    echo "For example: ch-mount -m /media/sdcard/" 
    echo "" 
    echo 1st parameter : ${1} 
    echo 2nd parameter : ${2} 
fi 

(chroot to arm64 filesystem)

$ ./ch-mount.sh -m ubuntu-rootfs/ 

6.Install package and configuration

# chmod 777 tmp 
#echo nameserver 8.8.8.8 > /etc/resolv.conf  or  #echo nameserver 8.8.4.4 > /etc/resolv.conf 

# apt-get update 
Install package you need 

apt-get install \ 
  language-pack-en-base \ 
  sudo \ 
  ssh \ 
  net-tools \ 
  network-manager \ 
  iputils-ping \ 
  rsyslog \ 
  bash-completion \    htop \ 
  resolvconf \ 
  dialog \ 
   vim 

apt-get install v4l-utils alsa-utils git gcc less resolvconf autoconf autopoint libtool 
bison flex gtk-doc-tools glib-2.0 libglib2.0-dev libpango1.0-dev libatk1.0-dev kmod 
pciutils 
  1. Add user
$ useradd -s '/bin/bash' -m -G adm,sudo yourusername 
$ echo "Set password for yourusername:" 
$ passwd yourusername 
$ echo "Set password for root:" 
$ passwd root 
3) Set host name 
$ echo 'ubuntu.yourusername' > /etc/hostname 

8.Configure the serial port

$ sudo cp -ra /home/sk/bld_server2/users/skamiya/yocto/L4.14.98/imx-yocto-bsp-
ft/build-8qxpmek-xwayland/tmp/work/imx8qxpmek-poky-linux/systemd-
serialgetty/1.0-r5/image/*    ubuntu-rootfs/ 
  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2021-10-16 19:48:03  更:2021-10-16 19:49:30 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 5:40:40-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码