姓名:胡晨
# 一、 本段时间的学习内容:
# A. 学习的详细内容 1:成功搭建 optee 环境。
学习成果 1:进度安排(各工作是否达到预期等):达到。
# B. 学习的内容 2:实践 TA,CA 的简单套路,了解了执行的流程,看了一些相关的视频(https://www.bilibili.com/video/BV1L4411N7gZ?p=1)和博客(https://icyshuai.blog.csdn.net/article/details/73716352)
学习成果 2:进度安排(各工作是否达到预期等):达到。
# 二、困难和解决方案:
以下给出我总结的 optee 环境搭建方法(经过多次尝试,该方法可将时间缩短到两小时内,且必成功):
1. 首先,unbuntu 选择 18.04 版本,这是一切的基础,想必大家都知道版本的重要。(其他版本可能或多或少有难以解决的问题)。给出下载网址:http://mirrors.163.com/ubuntu-releases/18.04/
2. 使用如下指令安装搭建时需要的工具和库(此时使用 Ubuntu18.04 不会有任何报错,但是其他版本会有包安装不了,从而会导致后面一些莫名其妙的错误。):
1 | sudo apt-get install android-tools-adb android-tools-fastboot autoconf \ |
3. 下载 OP-TEE 的源代码
此时直接从网盘中下载就可以了,千万不要自己同步,可能出现 python 版本不对等问题网盘链接如下:
https://pan.baidu.com/s/1T9tsOnQ3Ebz9wm7ibzBLpw
提取码: cd94
把压缩包复制到 ubuntu 中再解压就可以了(解压出来的文件层数过多,例如 /op-tee/OP-TEE/… , 可以只留一个大文件目录方便操作)
5. 获取 toolchain
1 | $ cd build |
6. 启动 qemu(仍然在 build 目录下)
如果你不信邪,直接执行下面命令:
1 | $ make -f qemu.mk run-only |
此时必然会出现一个问题:
*** [/home/rhj0/open-tee/qemu/rules.mak:69:util/memfd.o] 错误 1
此时就需要修改文件里的代码。(可以直接在文件里搜索关键代码,方便寻找)
1 | // qemu/util/memfd.c文件中的: |
附上官方的更改链接(更改和上面一样):https://git.qemu.org/?p=qemu.git;a=commitdiff;h=75e5b70e6b5dcc4f2219992d7cffa462aa406af0;hp=200780a3a3ed067dfb2e0d2210b0ed09e748ba26
再次执行:
1 | $ make -f qemu.mk run-only |
就大功告成了。总耗时应该不超过两个小时,甚至网速快的话十几分钟就可以了。
(以上全是踩坑踩出来的经验和各个评论区大佬的解决方案,本人只是汇总找了条最简单的路)
对比别的教程把下载和同步源码改成了网盘下载,大大减少了不必要的麻烦。
最后感谢:https://www.bilibili.com/video/BV1L4411N7gZ?from=search&seid=3256181449257213811(推荐观看)
和 https://icyshuai.blog.csdn.net/article/details/71499619
三、 下周预期安排
- 下期进度安排:
尽快熟悉 TA 和 CA 的用法