当前位置:网站首页>Mise en place d'un environnement de développement OP - tee basé sur qemuv8

Mise en place d'un environnement de développement OP - tee basé sur qemuv8

2022-07-06 22:20:00 Stone8761

Environnement de développement:Ubuntu 22.04 desktop Machine virtuelle

1、Besoins environnementaux

$ 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、Installation 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

Changement repo Obtenir la source,In /etc/profile À la fin du document, ajouter ce qui suit ,Puis redémarrez le système

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

3、Accès 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

Remarques1:Conseils “Failed to connect to boringssl.googlesource.com port 443: Connection timed out” L'erreur est due au fait que l'adresse Web pertinente n'est pas accessible , Vous pouvez remplacer la source de l'URL par la commande suivante :

$ 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"

Remarques2:sync L'opération sera effectuée parce que github Le lien a échoué avec une erreur , Exécuter à nouveau après avoir signalé une erreur .Mais... sync Toutes les bibliothèques sont mises à jour à chaque fois , Chaque fois qu'un lien de bibliothèque échoue, une erreur est signalée , Mais peut - être que cette bibliothèque a été téléchargée . Pour que vous puissiez voir manifest Documentation, Vérifiez si toutes les bibliothèques ont été téléchargées . Si le téléchargement est terminé, vous pouvez passer à l'étape suivante .manifest.xml Documents .repo Sous la table des matières.

4、Compiler

$ cd ./build

$ make -j2 toolchains

$ make -j `nproc`

5、Exécution qemu

Toujours build/ Sous la table des matières

$ make run

Deux terminaux série virtuels apparaîtront après un fonctionnement correct , Où le numéro de port est 54320 Ce n'est pas un système de sécurité ,Le numéro de port est 54321 Pour le système de sécurité :

Entrée qemu Entrée arrière du terminal c Démarrer le système:

(qemu) c

Systèmes non sécuritaires (Linux)Peut passer root Connexion utilisateur

Système de sécurité:

Remarques1: Il peut être signalé pendant l'exécution python Erreur non trouvée par la commande,Mais ubuntu Le suivant est déjà installé python. C'est à cause d'un problème de nom ,Installé python2 Et python3, Un lien peut être créé ici pour résoudre le problème :

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

Remarques2:Première exécution make run Les composants pertinents seront compilés et exécutés à nouveau qemu, Après ça, on peut aller droit au but make run-only Fonctionnement direct.

6、Exécuter le Programme d'essai

Utiliser ps Contrôle des commandes tee-supplicant Le processus existe

 Exécution xtest Routine d'essai

$ xtest

原网站

版权声明
本文为[Stone8761]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/187/202207061425312094.html