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 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> 基于 QEMUv8 搭建 OP-TEE 开发环境 -> 正文阅读

[移动开发]基于 QEMUv8 搭建 OP-TEE 开发环境

开发环境:Ubuntu 22.04 desktop 虚拟机

1、环境需求

$ sudo dpkg --add-architecture i386 $ sudo apt-get update

$ sudo apt-get install android-tools-adb android-tools-fastboot autoconf automake bc bison build-essential ccache codespell cpio cscope curl device-tree-compiler expect flex ftp-upload gdisk iasl libattr1-dev libcap-dev libcap-ng-dev libfdt-dev libftdi-dev libglib2.0-dev libgmp-dev libhidapi-dev libmpc-dev libncurses5-dev libpixman-1-dev libssl-dev libtool make mtools netcat ninja-build python-crypto python3-crypto python-pyelftools python3-pycryptodome python3-pyelftools rsync unzip uuid-dev xdg-utils xterm xz-utils zlib1g-dev

2、安装 repo

$ mkdir ~/bin

$ curl https://mirrors.tuna.tsinghua.edu.cn/git/git-repo -o ~/bin/repo

$ chmod a+x ~/bin/repo

$ export PATH=~/bin:$PATH

更改 repo 获取源,在 /etc/profile 文件最后添加如下内容,然后重启系统

export REPO_URL='https://mirrors.tuna.tsinghua.edu.cn/git/git-repo'

3、获取 OP-TEE 代码

$ mkdir OP-TEE

$ cd OP-TEE/

$ repo init -u https://github.com/OP-TEE/manifest.git -m qemu_v8.xml

$ repo sync -j4 --no-clone-bundle

备注1:提示 “Failed to connect to boringssl.googlesource.com port 443: Connection timed out” 错误是因为相关网址无法访问,可使用如下命令替换网址源:

$ git config --global url."https://github.com/google/boringssl.git".insteadOf "https://boringssl.googlesource.com/boringssl"

$ git config --global url."https://hub.fastgit.org/google/boringssl.git".insteadOf "https://boringssl.googlesource.com/boringssl"

备注2:sync 操作会因为 github 链接失败而报错,报错后重新执行即可。但 sync 每次都会更新所有库,只要有一个库链接失败都会报错,但可能这个库已经下载完成了。因此可以查看对应的 manifest 文件,检查是不是所有库都已经下载完成。如果都已经下载完成即可以进入到下一步骤。manifest.xml 文件在 .repo 目录下。

4、编译

$ cd ./build

$ make -j2 toolchains

$ make -j `nproc`

5、运行 qemu

依然在 build/ 目录下

$ make run

正确运行后会弹出两个虚拟的串口终端,其中端口号为 54320 的是非安全系统,端口号为 54321 的为安全系统:

进入 qemu 终端后输入 c 启动系统:

(qemu) c

非安全系统(Linux)可以通过 root 用户登录

安全系统:

备注1:运行过程中可能会报 python 命令找不到的错误,但是 ubuntu 下已经安装了 python。这是因为名称问题,安装的是 python2 和 python3,这里可以创建一条链接解决问题:

$ sudo ln -s /usr/bin/python3 /usr/bin/python

备注2:第一次执行 make run 会编译相关组件再运行 qemu,之后可以直接运行 make run-only 直接运行。

6、运行测试程序

使用 ps 命令检查 tee-supplicant 进程是否存在

?运行 xtest 测试例程

$ xtest

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章           查看所有文章
加:2022-07-03 10:57:45  更:2022-07-03 11:00:50 
 
开发: 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/25 2:22:15-

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