高通平臺開發環境搭建、編譯、燒錄(android5.1以上系統)

qincheng168發表於2017-05-29

                                                      高通平臺開發環境搭建、編譯、燒錄(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 

相關文章