1. 程式人生 > >高通平臺上的AMSS(Modem端) windows環境搭建

高通平臺上的AMSS(Modem端) windows環境搭建

高通平臺上的AMSS(Modeom端)Windows環境搭建

一、首先簡單介紹一下,高通平臺7&8系列平臺的軟硬體架構。

如圖:


硬體上採用的是ARM9+ARM11(最新的採用Cotex-A8或是Cotex-A9的架構。其中Android是在ARM11上執行,而ARM9部分負責處理通訊協議、射頻、GPIO等,或者可以稱作MODEM端,同樣也執行一個OS,稱為AMSS(Advanced Mobile Subscriber Software)。

二、主要介紹如何建立AMSS程式碼的編譯環境

編譯AMSS的source有兩種方式:一是在windows下編譯 ,另一是在linux下編譯。因為無法取得linux環境下的RVCT2.2的licence,所以通常情況下都是在windows環境下編譯。

編譯所需要的工具

     GNU make              3.81      

     RVDS (RVCT) 2.2.1      BLD593    

     Perl                    5.8.5 or later

                     2.4.x 注意:必須是Python2.4.X 版本太高了反而不行。)

        elfweaver.exe

特別建議:配置檔案中有些目錄的設定,建議編譯工具統一安裝在同一個目錄下,便於程式碼提交更新。如C:\ARM\

介紹編譯工具的安裝與注意事項

1、Perl 工具

     Perl稱為“實用報表提取語言”(Practical Extraction and Report Language),最初只是 Unix 系統管理員的一個工具,在工作日裡被用在無數的小任務中。如今它已經發展成為一種非常複雜的,通用的程式語言,以及完整的開發環境,包括偵錯程式,調節器,交叉引用,編譯器,庫,語法提示編輯器,以及所有其它“真正”的程式語言所具有的所有掛勾。當然,我們也只用到了Perl對AMSS整個程式碼中指令碼的解析功能,其他的也就沒有什麼了。

網路上可以下載到最新的Perl版本,只要版本在5.8.5以上就可以了,安裝過程中沒有什麼注意事項,選擇“NEXT”,直到安裝完成。安裝的路徑建議在統一規定的目錄下,如C:\ARM

2、Python

    Python(KK 英語發音:/'pa θɑn/, DJ 英語發音:/ paiθ n/)是一種面向物件、直譯式計算機程式設計語言,創始人為Guido van Rossum。這種語言的語法簡捷而清晰,並且具有豐富和強大的類庫。python常被暱稱為膠水語言,它能夠很輕鬆的把用其他語言製作的各種模組(尤其是C/C++)輕鬆地聯結在一起。常見的一種應用情形是,使用python快速生成程式的原型(有時甚至是程式的最終介面),然後對其中有特別要求的部分,用更合適的語言改寫,比如3D遊戲中的圖形渲染模組,速度要求非常高,就可以用C++重寫。

同樣的,我們也只需要這個工具進行編譯,不用過多關注怎麼使用。版本上只選擇2.4.x,過高或是更低的版本都不適合,這點是高通平臺Release Note 強調的。

安裝的路徑建議在統一規定的目錄下,如C:\ARM

3、GNU make

Windows環境下GNU工具,就是比較熟悉的Cygwin,但有一個問題,不是最新的版本就可以。已

經下載了安裝執行檔案和整個安裝包,安裝過程如下:

1) 


執行安裝檔案cygwin_setup.exe

2)  選擇安裝程式來源

3) 


選擇安裝目錄

同樣是建議安裝的路徑統一在規定的目錄下,如C:\ARM

4)  選擇安裝時,為下載儲存的目錄(由於安裝程式源都已經下載了,因此直接選擇到該目錄)

5)  選擇需要安裝的套件

注:一定要選擇全部安裝,否則無法實現編譯。

6)  安裝完成……

4、RVDS

編譯需要的RVCT2.2.1版本,破解的版本。簡單介紹一下破解方法。下載的破解包有三個壓縮包RVDS220.rar、RVCT22_593_Windows.zip 和RVDS Crack.rar

  1)安裝

解壓縮檔案RVDS220.rar,執行Setup.exe。

安裝過程中,可能會提示“WARNING: Machine needsrebooting”,如果你確認沒有新安裝什麼軟體或者windows更新,可以點選“Ignore”忽略這個提示

同樣是建議安裝的路徑統一在規定的目錄下,如C:\ARM

下一步,會有一個Advanced…按鈕,點選它,取消“Update environment variables inregistry”,不更新環境變數,這是為了避免和ADS12衝突。

有一個步驟是和檔案關聯,全部取消——你不會喜歡用Code Warrior編輯原始碼的

最後,會彈出一個視窗,提示要license,這個直接取消。

2)打補丁到 build 593

拷貝RVCT22_593_Windows.zip 到本地,解壓,可以看到一堆.exe檔案

將其全部拷貝到安裝目錄C:\ARM\rvct22\RVCT\Programs\2.2\349\win_32-pentium,覆蓋同名檔案

3)破解

解壓RVDS Crack 資料夾,執行 keygen.exe

點選上圖中所示的Generate,則它會在本目錄下生成license.dat。在C盤根目錄下建資料夾flexlm 把生成的license.dat拷貝到裡面。。。。。。這一步不知道如何破解,如果license.dat在其他目錄下,無法正確完整破解RVDS工具。

匯入license.dat。執行Licence Wizard 4.0

下一步,選擇Install Lice…

即完成了License.dat的匯入步驟。

4)對部分檔案進行patch

執行patch.exe,

點選 Patch,然後依次選擇下列所有檔案。。。。這一步比較繁瑣,要求每個檔案都要Patch

C:\apps\rvct22\IDEs\CodeWarrior\CodeWarrior\5.6.1\1592\win_32-pentium\bin\Plugins\License\oemlicense.dll

C:\apps\rvct22\IDEs\CodeWarrior\RVPlugins\1.0\86\win_32-pentium\oemlicense\oemlicense.dll

C:\apps\rvct22\RDI\armsd\1.3.1\66\win_32-pentium\armsd.exe

C:\apps\rvct22\RDI\AXD\1.3.1\98\win_32-pentium\axd.exe

C:\apps\rvct22\RVCT\Programs\2.2\349\win_32-pentium\armasm.exe

C:\apps\rvct22\RVCT\Programs\2.2\349\win_32-pentium\armcc.exe

C:\apps\rvct22\RVCT\Programs\2.2\349\win_32-pentium\armcpp.exe

C:\apps\rvct22\RVCT\Programs\2.2\349\win_32-pentium\armlink.exe

C:\apps\rvct22\RVCT\Programs\2.2\349\win_32-pentium\fromelf.exe

C:\apps\rvct22\RVCT\Programs\2.2\349\win_32-pentium\tcc.exe

C:\apps\rvct22\RVCT\Programs\2.2\349\win_32-pentium\tcpp.exe

C:\apps\rvct22\RVD\Core\1.8\734\win_32-pentium\bin\tvs.exe

C:\apps\rvct22\RVD\Core\1.8\734\win_32-pentium\bin\xry100.dll

C:\apps\rvct22\RVARMulator\ARMulator\1.4.1\206\win_32-pentium\armiss.sdi

C:\apps\rvct22\RVARMulator\ARMulator\1.4.1\206\win_32-pentium\armulate.sdi

C:\apps\rvct22\RVARMulator\ARMulator\1.4.1\206\win_32-pentium\v6armiss.sdi

C:\apps\rvct22\RVARMulator\v6ARMulator\1.4.1\238\win_32-pentium\v6thumb2.sdi

C:\apps\rvct22\RVARMulator\v6ARMulator\1.4.1\238\win_32-pentium\v6trustzone.sdi

執行到這一步,已經完成了RVCT的安裝。

5)驗證

開啟命令列視窗。在裡面執行

armcc--vsn

輸出應該是即表示安裝成功。

ARM/ThumbC/C++ Compiler, RVCT2.2 [Build 593]

Softwaresupplied by: mammoth//ZWTiSO 2005

編譯工具安裝到上述4個步驟,就已經完成了AMSS Windows編譯環境的建立。

5、Elfwearver.exe

這一步介紹的Elfwearver.exe工具是用來合併elf檔案的,因為高通現在的release不包括Elfwearver.exe這個檔案,因此需要自己生成,這個也是需要安裝Python工具的一個原因。根據高通的文件(Release Note)

即可以生成所需的Elfwearver.exe。其中setup.py這個檔案高通有提供。當然也可以用現成的Elfwearver.exe (也許還需要MSVCR71.dll)。

生成Elfwearver.exe後,要修改Dmss_rule.min檔案,

修改ELFWEAVER_CMD =tools/pyelf/elfweaver.exe為ELFWEAVER_CMD = python tools/pyelf/elfweaver

上述5個步驟中,其中的345步可以直接拷貝已經安裝好的檔案,不需要每個人都全部重新安裝一次。

三、Windows環境變數設定

需要在系統環境變數中加入以下Path屬性(有些自動會生成)

C:\ARM\Perl\site\bin;

C:\ARM\Perl\bin;

C:\ARM\Python24;

C:\ARM\RVCT22\bin\win_32-pentium;

C:\ARM\RVCT22\RVD\Core\1.8\734\win_32-pentium\bin;

C:\ARM\RVCT22\RVCT\Programs\2.2\349\win_32-pentium;

C:\ARM\RVCT22\Utilities\FLEXlm\9.2\release\win_32-pentium;

C:\ARM\cygwin\bin;

所需修改的檔案路徑為RVDS安裝目錄下的這兩個檔案

1.RDI/ARMSD/1.3.1/66/install.xml

2.utilities/installer/1.6/43/install.xml

需要修改的內容兩個檔案是一樣的

相關推薦

臺上AMSS(Modem) windows環境搭建

高通平臺上的AMSS(Modeom端)Windows環境搭建 一、首先簡單介紹一下,高通平臺7&8系列平臺的軟硬體架構。 如圖: 硬體上採用的是ARM9+ARM11(最新的採用Cotex-A8或是Cotex-A9)的架構。其中Android是在ARM11上執行,而ARM9部分負責處理通

臺中gpio簡單操作和除錯

        做底層驅動免不了gpio打交道,所以對其操作和除錯進行了一下簡單的梳理 一、gpio的除錯方法         在Linux下,通過sysfs,獲取gpio狀態,也可以操作gpio。 1、獲取gpio狀態         cd /sys/kerne

從0到TrustZone第一篇:探究的 SEE(安全可執行環境

轉載:http://www.freebuf.com/articles/system/103152.html 在本篇文章中,我們將討論高通安全執行環境(QSEE)。 之前討論過,裝置使用TrustZone的最主要的原因之一是它可以提供“可信執行環境(TEE)”,該環境可以保

Qt 5.5.0 Windows環境搭建

article 版本號 一個 source window 環境變量 bsp pro 不能 1)訪問官方站點:http://www.qt.io/download-open-source/ 2)選擇離線安裝包 3)選擇 W

Windows環境搭建Red5流媒體服務器

pan 安裝包 截斷 download 3.2 添加 裏根 瀏覽器 屬性 Windows環境搭建Red5流媒體服務器指南 測試環境:Windows 7 一、 下載安裝程序 red5-server 下載地址 https://github.com

RabbitMQ Windows環境搭建

orien -o 配置環境 height .exe ice eight 變量 nbsp 1.0 RabbitMQ是用Erlang語言編寫,因此安裝RabbitMQ,首先要安裝Erlang。 Erlang的官網:http://www.erlang.org/ 文件:otp_w

zookeeper初探二 windows環境搭建偽集群

集群 conf 創建 limit 修改 sync localhost logs port 在conf目錄下創建 zoo1.cfg,zoo2.cfg,zoo3.cfgzoo1.cfgtickTime=2000 initLimit=10 syncLimit=5 dataDir=

Elasticsearch、Logstash和Kibana Windows環境搭建(一)

tps 文件的 技術分享 中文分詞器 完成 allow ted zip 匯總 一、概述ELK官網 https://www.elastic.co ELK由Elasticsearch、Logstash和Kibana三部分組件組成; Elasticsearch是個開源分布式搜索

Windows環境搭建kafka

一、kafka簡介 1、Kafka是一種分散式的,基於釋出/訂閱的訊息系統。主要設計目標如下: 以時間複雜度為O(1)的方式提供訊息持久化能力,即使對TB級以上資料也能保證常數時間的訪問效能 高吞吐率。即使在非常廉價的商用機器上也能做到單機支援每秒100K條訊息的傳

windows環境搭建 therecipe/qt

作者: 飛劍神 網址:www.feijianshen.com 郵箱: [email protected] 本人:百度雲:wrzfeijianshen 本部落格共開下載部落格和其中用到的工具連結地址: 課件在這裡哦: https://github.com/wrzfe

AliOS-Things--Visual Studio Code Windows環境搭建 EMW3060

硬體模組:慶科MXCHIP-EMW3060 作業系統:Windows10/Windows7 目標:編譯成功Hello world  剛開始因為手上有ESP8266的板子,就嘗試在Windows10

SFTP伺服器-freeSSHd環境搭建及java連線測試

  因工作中需要使用SFTP上傳下載的功能,所以打算自己搭建一個SFTP伺服器用來測試(幾年前搭建過一次,忘了,現在回顧一下)。 下載下來之後直接選擇目錄安裝即可。 安裝完成開啟設定: 設定完成後啟動server 這樣我們的SFTP伺服器就

ELK日誌分析平臺系統windows環境搭建和基本使用

ELK(ElasticSearch, Logstash, Kibana),三者組合在一起就可以搭建實時的日誌分析平臺啦!   Logstash主要用來收集、過濾日誌資訊並將其儲存,所以主要用來提供資訊。 ElasticSearch是一個基於Lucene的開源分散式搜尋引擎,所以主要用來進行資訊

kafka使用筆記-基於SASL認證的kafka偽叢集windows環境搭建及測試

繼 基於SASL認證的kafka偽叢集linux環境搭建及測試 之後,由於環境的問題,需要在windows平臺搭建同樣的一個基於sasl認證的kakfa偽叢集環境。本次同樣使用的是 kafka_2.10-0.10.1.0.tgz 版本的kafka,整合zookeeper。只需要對此進行配

Golang/Go語言/Go IDE/Go windows環境搭建/Go自動提示編譯器/GoSublime

Go是Google開發的一種編譯型,併發型,並具有垃圾回收功能的程式語言。   羅伯特·格瑞史莫(Robert Griesemer),羅勃·派克(Rob Pike)及肯·湯普遜於2007年9月開始設計Go語言,Go語言是基於Inferno作業系統所開發的。Go語言於2009年11月正式宣佈推出,並在Linu

graphframes本地windows環境搭建

1.從github上下載graphframes包,或者從連結下載:https://download.csdn.net/download/weixin_42247685/10591772 2.解壓後將graphframes-master\python下的graphframes資料夾拷貝到pytho

windows環境搭建dubbo+zookeeper分散式服務架構

Dubbo背景和簡介 Dubbo開始於電商系統,因此在這裡先從電商系統的演變講起。 1.單一應用框架(ORM) 當網站流量很小時,只需一個應用,將所有功能如下單支付等都部署在一起,以減少部署節點和成本。 缺點:單一的系統架構,使得在開發過程

RabbitMQ入門教程之一--》Windows環境搭建RabbitMQ服務

第一步:windows環境下搭建rabbitmq服務 1. 安裝rabbitmq-server的執行環境--》erlang語言執行環境:     1.2 安裝、並配置環境變數ERLANG_HOME為安裝的根目錄,並把%ERLANG_HOME%\bin追加到PATH環境變

openresty windows環境搭建

windows下搭建openresty環境的文章大多補全,我這裡參考:IDEA中配置OpenResty開發環境 。這裡面可以完成絕大多數的安裝步驟,但是在最後一步卡主了: 本人是個java小白,不會使用ant來構建自動化拷貝。 一度差點放棄,要使用linux環境開發。發現IDEA自帶的

Xamarin介紹和Windows環境搭建

一,Mono介紹 1,What is Mono         Novell公司開發的跨平臺·NET執行環境,mono是指由Novell公司(由Ximian發起,並由Miguel de lcaza領導的,一個致力於開創·NET在Linux上使用的開源工程。Mono的