SDM670 AMSS程式碼編譯
Ubuntu16.04系統下AMSS程式碼的編譯
上週高通給的SDM670程式碼剛剛釋放,嘗試進行了modem的編譯工作。
首先是編譯工具的準備,按照高通文件的描述,需要以下工具:
一、工具安裝
1.Snapdragon LLVM Arm toolchain 4.0.3
2.Snapdragon LLVM Arm toolchain 3.9.3
3.Snapdragon LLVM Arm toolchain 3.9.1
4.Snapdragon LLVM Arm toolchain 4.0.11
5.GNU compiler collection (GCC) Linaro GNU 4.9 – 2014.07
6.Install the Arm compiler tools
7.Hexagon toolchain
8.nanopb-0.3.6-linux-x86.tar.gz
9.Python
安裝路徑:
1.LLVM安裝路徑如下:
/pkg/qct/software/llvm/release/arm
2.GNU compiler collection (GCC) Linaro GNU 4.9 – 2014.07路徑:
/prj/llvm-arm/home/common/build_tools
3.Install the Arm compiler tools路徑:
自定義,安裝好之後新增到.bashrc中
4.Hexagon toolchain路徑:
自定義,安裝好之後新增到.bashrc
5.nanopb-0.3.6-linux-x86.tar.gz路徑:
無需安裝,編譯的時候會呼叫。
6.python路徑:
/pkg/qct/software/python/2.7/bin
二、修改環境變數
修改home目錄下的.bashrc,在末尾位置新增如下配置
##modem build add --->start
export HEXAGON_ROOT=/home/mazhw/Qualcomm/HEXAGON_Tools
#export PATH=$PATH:$HEXAGON_ROOT
export PYTHON_PATH=/usr/local/bin/python
#export MAKE_PATH=/usr/bin/make
#export PATH=$MAKE_PATH:$PYTHON_PATH:$PATH
export ARMTOOLS=/home/mazhw/ARMCompiler6.11/bin
##modem build add <<--- end
以上僅供參考,後面的路徑和自己的軟體安裝路徑要相匹配
三、編譯
Build MPSS
1.cd <target_root>/MPSS.AT.4.0.2/modem_proc/build/ms
2.執行編譯./build.sh sdm710.gen.prod=-k
Build TrustZone (TZ) and hypervisor images
1.cd <target_root>/TZ.XF.5.0/trustzone_images/build/ms
2.執行編譯 python build_all.py -b TZ.XF.5.0 CHIPSET=sdm670 --config=build_config_deploy.xml --recompile
Build AOP
1. cd <target_root>/AOP.HO.1.1/aop_proc/build
2.執行編譯 ./build_670_common.sh
Build and compile aDSP
1.cd <target_root>/ADSP.VT.5.0/adsp_proc
2.Copy the nanopb-0.3.6-linux-x86.tar.gz file to adsp_proc/ssc/tools
3.python ssc/build/config_nanopb_dependency.py -f nanopb-0.3.6-linux-x86
4.python build/build.py -c sdm670 -f aDSP -o all
Build cDSP
1.cd <target_root>/CDSP.VT.2.0/
python ./cdsp_proc/build/build.py -c sdm670 -o all -f CDS
Build boot loaders
1.cd <target_root>/BOOT.XF.2.1/boot_images/QcomPkg/SDM670Pkg
2.python ../buildex.py --variant LA -r RELEASE -t SDM670Pkg
3.python ../buildex.py --variant LA -r RELEASE -t QcomToolsPkg
目前一些編譯命令和文件有出入,具體的編譯命令以release note為準。
高通專案就是這樣,開始的時候按照文件來感覺很吃力,想寫個文件總結總結,但是最後除錯好之後卻又發現文件裡寫的基本上也都包含好了,寫個部落格有點雞肋,但是還是記錄一下,有什麼問題請大家多多指教。
參考資料:
[1]https://blog.csdn.net/u013983194/article/details/60631429
[2]高通文件,sp80-pg666-4_b_sdm710_sdm712_linux_android_software_user_manual.pdf