1. 程式人生 > >SDM670 AMSS程式碼編譯

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