前言
留档,方便以后随取随学。出自完全的小白之手,任何不对之处欢迎指正。
官方文档上optee已经不再支持Ubuntu 20.04 之前的版本,可能会碰到各种奇怪的问题......这里放上官方文档的网址,方便查阅:
https://optee.readthedocs.io/en/latest/general/index.html
参考:ubuntu虚拟机搭建OP-TEE_optee ubuntu-CSDN博客 是对这篇的一些补充(?)和更新,非常好博客,使我搭建OP-TEE。
一、安装虚拟机
经典安装就可以。需要注意的是硬盘空间要留大一点(我设的30G),不然可能会出现内存不够,Ubuntu重启后黑屏的状况出现。
二、安装依赖项
根据官方的文档,依次执行以下内容:
apt update
apt upgrade -y
有些情况下会报错:
此时按照它的提示运行apt-get update,然后再次运行apt upgrade -y即可。
完成此步需要十分钟左右。
三、安装repo
采用的是清华镜像站的git-repo镜像。
mkdir ~/bin
$ PATH=~/bin:$PATH
$ curl https://mirrors.tuna.tsinghua.edu.cn/git/git-repo > ~/bin/repo
$ chmod a+x ~/bin/repo
达成下图即可认为curl执行成功:
(在一次安装中提醒没有crul指令,按照提示apt install curl # version 7.68.0-1ubuntu2.20之后即可运行。)
完成此步需要十分钟左右。
四、获取OP-TEE
使用repo获取OP-TEE。这里repo sync -j8极有可能拉取失败。建议先配置代理,具体参考:vmware 虚拟机使用主机VPN的方法 解决github无法连接的问题 - 知乎
$ mkdir optee
$ cd optee
$ repo init -u https://github.com/OP-TEE/manifest.git -m qemu_v8.xml --repo-url=https://mirrors.tuna.tsinghua.edu.cn/git/git-repo -b 3.22.0
$ repo sync -j8
(中间突然报错,使用sudo apt-get install git 安装git软件包即可。理论上来说apt-get update之后应该不会有这个错误...不知道怎么回事)
在执行第三行指令的时候可能会出现以下问题:
按照给出的提示输入git邮箱和姓名,再次运行即可。
出现以下可以视为第三条指令运行成功:
出现
可视为第四条指令运行成功。
完成此步需要1小时左右。
五、获取编译链工具
$ cd build
$ make -f toolchain.mk toolchains
六 编译qemu工程
cd build
make -f qemu_v8.mk run-only
运行上述命令后,将会启动两个terminal,分别为secure world terminal、normal world terminal,用于显示OP-TEE和Linux内核的日志数据。
在qemu界面输入“c”并回车,此时会在secure world terminal显示OP-TEE日志,在normal world terminal显示Linux内核日志; 在normal world terminal中输入“xtest”并回车,在secure world和normal world的terminal分别输出相应的日志。
至此结束,完成此步需要10分钟左右。