感謝 帥峯雲 博主的教程,書已購買講的很細緻:https://blog.csdn.net/shuaifengyun/article/details/71499619
感謝 技術宅阿棍兒 up主的視頻,已三連投幣:https://www.bilibili.com/video/av55057371/
虛擬機環境是我一直做 Linux驅動開發的環境,Ubuntu 16.04.5
一、準備開發環境並安裝開發工具:
time sudo apt-get install android-tools-adb android-tools-fastboot autoconf \
automake bc bison build-essential cscope curl device-tree-compiler \
expect flex ftp-upload gdisk iasl libattr1-dev libc6:i386 libcap-dev \
libfdt-dev libftdi-dev libglib2.0-dev libhidapi-dev libncurses5-dev \
libpixman-1-dev libssl-dev libstdc++6:i386 libtool libz1:i386 make \
mtools netcat python-crypto python-serial python-wand unzip uuid-dev \
xdg-utils xterm xz-utils zlib1g-dev -y
找了個大家都不在公司的時間,下載安裝需要的時間很少。
二、下載 OP-TEE的源碼
mkdir optee
cd optee
repo init -u https://github.com/OP-TEE/manifest.git -m default_stable.xml --repo-url=git://codeaurora.org/tools/repo.git -b 2.6.0
//初始化repo,這是官方源,會有很多問題,改下 url,改爲清華的鏡像,https://mirrors.tuna.tsinghua.edu.cn/help/git-repo/
repo init -u https://github.com/OP-TEE/manifest.git -m default_stable.xml --repo-url=https://mirrors.tuna.tsinghua.edu.cn/git/git-repo -b 2.6.0
提示 repo未安裝,那麼先安裝下 repo,再去執行上面命令。
過了一會兒,出現這句話。詢問 git的郵箱和姓名。按照格式填寫自己賬號信息。
git config --global user.email [email protected]
git config --global user.name ZhiliangMa
填寫自己賬號信息後,再進行一次上一步命令。
輸入 y,git 源碼就可以啦。
(因爲按照up主使用的國內的鏡像,沒有博主後面那麼多的錯誤)
三、同步代碼
按照 up的方法,修改一些配置,大大節省時間。
打開 ~/optee/.repo/manifest.xml
我的打開只有這幾句話,顯然我的並不適用 up主的方法。乖乖按照 博主的弄,時間長就長吧。
time repo sync -j8 -f
因爲趕在公司沒人的時候弄的,網速比較快,平均3~10M,下載資源用的時間不多。大多數時間都花在了本地解析配置上。
四、獲取工具鏈
cd build
time make -f toolchain.mk toolchains
五、編譯。
使用 qemu 運行 OP-TEE 工程(在 build 目錄下編譯)
time make -f qemu.mk all
編譯後並未出現 up主視頻中出錯的現象,看來應該是最新版本的 OP-TEE 將上個Bug修復過了。
六、啓動 Qemu(在 build目錄下啓動),運行 OP-TEE 和 Linux
啓動 Qemu。
make -f qemu.mk run-only
在 Qemu 界面中敲入字母 'c',就會運行 OP-TEE 和 Linux。
並且同時會彈出兩個終端窗口,一個是 OP-TEE的,一個是 Linux的。
(圖中,坐上角的終端是 Qemu的,左下角的終端是 Qemu虛擬出的 Linux,右下角的是 Qemu虛擬出的 OP-TEE)
(很好區分,OP-TEE的信息行首是 DEBUG:)
七、運行 optee_example_hello_world
在 Qemu虛擬出的 Linux終端中,輸入 optee_hello_world 命令就會執行示例代碼 optee_example_hello_world。
現象正確,OPTEE 虛擬環境搭建成功。
整個搭建過程花費了約兩小時,建議大家一定要找網速快的地方弄。
第三步下載因爲公司沒人,網速比較快,將近3個G的各種包不到10分鐘下載完,剩下的時間看個人電腦配置。