高通平台上的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

     Python                  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 强调的。

官方下载地址:http://www.python.org/ftp/python/2.3.4/  (已经下载了。)

安装的路径建议在统一规定的目录下,如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

需要修改的内容两个文件是一样的

%(HOSTPLAT)%全部替换为%(FS)win_32-pentium%

你可能感兴趣的:(ARM/Qualcomm)