当前位置:网站首页>Build op-tee development environment based on qemuv8
Build op-tee development environment based on qemuv8
2022-07-06 22:20:00 【stone8761】
development environment :Ubuntu 22.04 desktop virtual machine
1、 Environmental requirements
$ 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、 install 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
change repo Get source , stay /etc/profile At the end of the document, add the following , Then restart the system
export REPO_URL='https://mirrors.tuna.tsinghua.edu.cn/git/git-repo'
3、 obtain OP-TEE Code
$ 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
remarks 1: Tips “Failed to connect to boringssl.googlesource.com port 443: Connection timed out” The error is because the relevant website cannot be accessed , You can use the following command to replace the URL source :
$ 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"
remarks 2:sync The operation will be because github Link failure and error , Re execute after reporting an error . but sync All libraries will be updated every time , As long as one library link fails, an error will be reported , But maybe the library has been downloaded . Therefore, you can view the corresponding manifest file , Check whether all libraries have been downloaded . If you have finished downloading, you can go to the next step .manifest.xml The file in .repo Under the table of contents .
4、 compile
$ cd ./build
$ make -j2 toolchains
$ make -j `nproc`
5、 function qemu
Still in build/ Under the table of contents
$ make run
After correct operation, two virtual serial port terminals will pop up , The port number is 54320 It's an unsafe system , The port number is 54321 For the security system :
Get into qemu Input after the terminal c Start the system :
(qemu) c
Non safety system (Linux) Can pass root The user login

Security system :

remarks 1: During operation, it may report python Command not found error , however ubuntu It has been installed python. This is because of the name , Installation is python2 and python3, Here you can create a link to solve the problem :
$ sudo ln -s /usr/bin/python3 /usr/bin/python
remarks 2: First execution make run Will compile relevant components and then run qemu, Then you can run directly make run-only Direct operation .
6、 Run the test program
Use ps Command check tee-supplicant Whether the process exists

function xtest Test routine
$ xtest

边栏推荐
- 十二、启动流程
- ZABBIX proxy server and ZABBIX SNMP monitoring
- 3DMAX assign face map
- 【10点公开课】:视频质量评价基础与实践
- lora同步字设置
- GPS du début à l'abandon (XIII), surveillance autonome de l'intégrité du récepteur (raim)
- Management background --4, delete classification
- Oracle性能分析3:TKPROF简介
- [sciter]: encapsulate the notification bar component based on sciter
- Lora sync word settings
猜你喜欢

3DMax指定面贴图

2500 common Chinese characters + 130 common Chinese and English characters

Chapter 4: talk about class loader again

GNN,请你的网络层数再深一点~

The nearest common ancestor of binary (search) tree ●●

基於 QEMUv8 搭建 OP-TEE 開發環境

Management background --4, delete classification

第4章:再谈类的加载器

GPS du début à l'abandon (XIII), surveillance autonome de l'intégrité du récepteur (raim)

嵌入式常用计算神器EXCEL,欢迎各位推荐技巧,以保持文档持续更新,为其他人提供便利
随机推荐
每日一题:力扣:225:用队列实现栈
GPS从入门到放弃(十八)、多路径效应
C # realizes crystal report binding data and printing 4-bar code
解决项目跨域问题
嵌入式常用计算神器EXCEL,欢迎各位推荐技巧,以保持文档持续更新,为其他人提供便利
Make menuconfig has a recipe for target 'menuconfig' failed error
ResNet-RS:谷歌领衔调优ResNet,性能全面超越EfficientNet系列 | 2021 arxiv
MariaDB database management system learning (I) installation diagram
RESNET rs: Google takes the lead in tuning RESNET, and its performance comprehensively surpasses efficientnet series | 2021 arXiv
2022年6月国产数据库大事记-墨天轮
GPS从入门到放弃(十六)、卫星时钟误差和卫星星历误差
GPS from getting started to giving up (19), precise ephemeris (SP3 format)
C # réalise la liaison des données du rapport Crystal et l'impression du Code à barres 4
做接口测试都测什么?有哪些通用测试点?
Notes de développement du matériel (10): flux de base du développement du matériel, fabrication d'un module USB à RS232 (9): création de la Bibliothèque d'emballage ch340g / max232 SOP - 16 et Associa
2021 geometry deep learning master Michael Bronstein long article analysis
What is the difference between animators and animators- What is the difference between an Animator and an Animation?
Seata aggregates at, TCC, Saga and XA transaction modes to create a one-stop distributed transaction solution
China 1,4-cyclohexanedimethanol (CHDM) industry research and investment decision-making report (2022 Edition)
C#實現水晶報錶綁定數據並實現打印4-條形碼