一. 前期準備 原始碼下載 :
使用repo來下載項目原始碼
$repo init -u https://github.com/OP-TEE/manifest.git -m ${TARGET}.xml [-b ${BRANCH}]$ repo sync
我們使用的TARGET 為FVP.xml BRANCH為master
使用以下命令來下載編譯器:
注意:下載路徑不建議修改
make toolchains
筆者使用此方法下載時出現錯誤:
fatal: The remote end hung up unexpectedly3 MiB | 279.00 KiB/s fatal: early EOF fatal: index-pack failed remote: Counting objects
初步確定為git緩衝空間不足,第一次下載失敗。在重啟後,重新下載此錯誤再次出現但未影響下載。 運行平台下載
使用此連結,進入ARM官網下載ARMV8基本模型也就是我們的測試平台FVP,注意下載後解壓到/devel/optee目錄下,如果未下載並將Foundation_Platformpkg檔案夾移動至此目錄下,編譯時間會報錯:
Makefile:24: *** /root/devel/optee/build/../Foundation_Platformpkg does not exist. stop.
二.編譯與測試 在目錄/build下使用命令:
$make all run
對OP-TEE進行編譯,若出現如下錯誤:
Sed Error : sed: -e expression #1, char 51: unknown option to `s'
請參照此部落格的解決辦法:http://blog.csdn.net/u010071291/article/details/50774082
編譯成功後,自動彈出如下介面
FVP terminal_0介面即:LINUX(RICH OS)的命令列介面
FVP terminal_1介面即:OPTEE__OS(SECURE OS)介面
Fast Models -CLCD Foundation Platform介面:
測試過程以及結果與http://blog.csdn.net/u010071291/article/details/50774082 中一致。