高通平臺開發環境搭建、編譯、燒錄(android5.1以上系統)
高通平臺開發環境搭建、編譯、燒錄(android5.1以上系統)
以MSN8937為例
1. 安裝Ubuntu(12.04LTS以上穩定版本)
安裝過程中必須以根使用者登入或使用sudo獲取root許可權。
1.1按照http://releases.ubuntu.com中的說明,建立安裝光碟,將其安裝到計算機上。
1.2. 安裝完成後,通過下列選項之一來更新軟體:
使用GUI,選擇System > Administration > Update Manager
使用shell命令列
i. 如下所示直接編輯原始碼的config檔案:
sudo vi /etc/apt/sources.list
ii. 編輯檔案以啟用通用和多元源,並禁用Ubuntu安裝光碟源。
iii. 在命令列中,執行軟體包列表更新和軟體包升級:
sudo apt-get update
sudo apt-get upgrade
1.3. 使用apt-get安裝所需的其他軟體包。
$ sudo apt-get install git-core gnupg flex bison gperf build-essential
zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc
1.4. 重要!按以下選項之一,將bash設為預設shell(Android生成指令碼依賴於bash shell,要求系統預設shell /bin/sh呼叫bash):
重新配置軟體包:
i. 使用命令:
sudo dpkg-reconfigure dash
ii. 回答no。
使用以下命令,將符號連結/bin/sh→dash手動更改為/bin/sh→bash:
sudo rm /bin/sh
sudo ln -s /bin/bash /bin/sh
2 為Windows 共享配置Samba (可選)
2.1. 使用以下命令為Windows共享安裝Samba伺服器和配置管理器:
sudo apt-get install samba system-config-samba
2.2. 通過以下方法配置Samba伺服器:
System->Administration->Samba
preferences->server settings:
vmgroup, security=user authentication
encrypt pw=yes, guest accnt=no guest accnt
add share directory=/, share name=root, description=root directory
3 安裝JDK
Ubuntu的主軟體包儲存庫中不再包含Sun JDK。如需下載,可新增適當的儲存庫,並指示系統使用該JDK。
sudo add-apt-repository “deb http://archive.canonical.com/ lucid partner”
sudo apt-get update
sudo apt-get install sun-java6-jdk
4 手動編譯Linux 核心
4.1. 轉到主Android主目錄。
4.2. 設定Android生成環境:
source build/envsetup.sh
lunch msm8937_64-userdebug (64-bit kernelspace and 64-bit user space)
或
lunch msm8937_32-userdebug (32-bit kernelspace and 32-bit user space)
4.3. 使用以下命令生成核心映像:
make kernel
生成的核心映像顯示於out/target/product/工程名/boot.img
5 手動編譯Android
5.1. 設定Android生成環境(envsetup.sh/lunch)。
5.2. 轉到Android主目錄。
5.3. 使用以下命令進行編譯:
make -j4
5.4. 要編譯單個元件,選擇下列選項之一:
要從樹頂部執行make,可使用以下命令:
m <component name> # E.g. m libril-qc-1
要編譯當前目錄中的所有模組,轉到元件目錄並使用以下命令:
mm
5.5. 要刪除單個元件物件檔案,選擇下列選項之一:
要刪除某個特定模組,使用以下命令:
m clean-<module name>
要刪除指定路徑中的某個模組,使用以下命令:
rm -rf out/target/product/*/obj/STATIC_LIBRARIES/<module name>_intermediates
rm -rf out/target/product/*/obj/SHARED_LIBRARIES/<module name>_intermediates
rm -rf out/target/product/*/obj/EXECUTABLES/<module name>_intermediates
6 其他重要Android 編譯命令
printconfig – 按照choosecombo命令中的設定列印當前配置。
m – 從樹頂部執行make。此命令很有幫助,因為使用者能夠從子目錄中執行make。
如果具有TOP環境變數集,則命令將使用該集。如果沒有TOP變數集,則命令將從
當前目錄開始檢視整個樹,並嘗試查詢樹的頂部。
- mm – 在當前目錄中生成所有模組。
- mmm – 在提供的目錄中生成所有模組。
croot – cd到樹頂部。
sgrep – 針對當前目錄下的所有.c、.cpp、.h、.java和.xml檔案中提供的正規表示式執行grep。
clean-$(LOCAL_MODULE)和clean-$(LOCAL_PACKAGE_NAME)
允許有選擇性地清理一個目標。例如,可以鍵入make clean-libutils,這將會刪除libutils.so和所有中間檔案;或者鍵入make clean-Home,這將僅清除Home應用
程式。
make clean – 徹底刪除此配置的所有輸出和中間檔案。此命令等同於rm -rf out/<configuration>/。
Android makefile (Android.mk)具有以下特性:
類似於常規GNU makefile;不同之處在於:
要為原始檔分配的預定義變數,包括路徑、編譯器標記、庫包含等。
預定義操作,用於編譯可執行檔案、共享庫、靜態庫、Android軟體包以及使用預編譯的二進位制程式碼等。
7 使用YGDP量產工具刷寫eMMC
編譯載入
步驟的詳細資訊如下所述:
7.1. 確保已關閉QPST和QXDM Pro,J-Tag/T32從設定中斷開連線。
7.2 開啟命令提示符,然後執行以下命令:
C:\>adb reboot bootloader
C:\>fastboot devices
65144579 fastboot
7.3. 從Start選單啟動YGDP。且USB 埠位於Windows裝置管理器列表中。
7.4 開啟配置檔案並選擇cpb檔案
7.5 YGDP自動獲取CPB檔案配置,選擇開始,並開始下載
7.6 下載完後,機器會自動重啟或者 adb reboot
相關文章
- ESP32-S3 搭建 micropython 開發環境,韌體編譯,燒錄S3Python開發環境編譯
- Banana Pi ESP32-S3 搭建 micropython 開發環境,韌體編譯,燒錄NaNS3Python開發環境編譯
- qgroundcontrol開發環境搭建原始碼編譯開發環境原始碼編譯
- [編譯] 9、在Linux下搭建 nordic 最新基於 zephyr 的開發燒寫環境編譯Linux
- Banana PI BPI-Leaf S2,ESP32-S2 搭建 micropython 開發環境,韌體編譯,燒錄NaNPython開發環境編譯
- Android編譯環境搭建Android編譯
- openform環境搭建-編譯ORM編譯
- RK3288 Linux SDK 編譯開發環境搭建Linux編譯開發環境
- Hi3511平臺開發環境搭建資料開發環境
- 編譯環境 Golang開發環境 vscode+git編譯Golang開發環境VSCodeGit
- 搭建rust開發環境-記錄Rust開發環境
- Windows系統中搭建python開發環境WindowsPython開發環境
- 全志A40i開發板編譯環境的搭建編譯
- Linux 開發環境 -- C/C++開發環境編譯安裝Linux開發環境C++編譯
- ubuntu系統中java開發環境的搭建UbuntuJava開發環境
- 寫作業系統之搭建開發環境作業系統開發環境
- Linux開發環境搭建——deepin系統的使用Linux開發環境
- Ubuntu18.04 搭建go編譯環境UbuntuGo編譯
- Pinpoint 編譯環境搭建(Pinpoint系列一)編譯
- CentOS7.3 編譯搭建 lamp 環境CentOS編譯LAMP
- 直播平臺開發經驗分享——直播平臺搭建環境配置詳解及分析
- 【記錄】WSL 下搭建前端開發環境前端開發環境
- i.MX6ULL開發板原始碼編譯燒錄原始碼編譯
- Android10.0 系統解析(02)——搭建Android原始碼編譯除錯環境Android原始碼編譯除錯
- FFmpeg開發筆記(一)搭建Linux系統的開發環境筆記Linux開發環境
- 會員拓客系統平臺搭建開發
- 高通MDM平臺開發入門
- Linux系統環境搭建Linux
- Flutter開發入門之開發環境搭建(VSCode搭建Flutter開發環境)Flutter開發環境VSCode
- NFT數字藏品交易系統開發平臺搭建
- 區塊鏈IM社交系統開發,IM即時通訊平臺搭建app區塊鏈APP
- CubeMX + VS Code配置環境代替Keil編寫燒錄除錯程式除錯
- Windows10系統下使用Docker搭建ClickHouse開發環境WindowsDocker開發環境
- 使用window10系統搭建完善的Linux開發環境Linux開發環境
- Hi3861編譯燒錄更快捷編譯
- 1 – 搭建開發環境開發環境
- Androdi開發環境搭建開發環境
- Cordova 開發環境搭建開發環境
- GeoServer開發環境搭建Server開發環境