技术标签: G-sensor
高通平台上的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)
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个步骤中,其中的3、4、5步可以直接拷贝已经安装好的文件,不需要每个人都全部重新安装一次。
三、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%
用python3.6.6打包程序时遇到了如下错误可以看到是old_xml = read.() 那里出了错,所以到winmanifest.py找到1076行,可以看到将 with open(filename) as f : 变为 with open(filename,encoding="UTF-8") as f : 如图:再次打包exe我们发现打包成功,Unico...
阅读文本大概需要 4 分钟。随着 Python 越来越火爆爬虫这个行业也逐渐被人所重视起来,但市面上教的一些爬虫的技巧大多是一些基础类的知识,然而在实际的爬虫工作中你会遇...
声明:本文参考了网上几篇教程,有些图片直接复制网上的,文末有链接,侵删。SecureCRT优化调整:1.设置配置文件的存放路径 我的SecureCRT是绿色免安装版,放在在D:\software\installation\SecureCRT_绿色版 目录下面。为了以后因为重装系统或者拷贝等后期维护的方便,我把需要的路径都放在D:\software\installation\SecureCR...
1、join():join()方法使调用该方法的线程在此之前执行完毕,也就是等待该方法的线程执行完毕后再往下继续执行。注意该方法也需要捕捉异常。ublic class Test { public static void main(String[] args) { MyThread2 m2 = new MyThread2("asda"); m2.start(); try {
如下转自Vue官网:https://cn.vuejs.org/activated类型:func触发时机:keep-alive组件激活时使用;deactivated类型:func触发时机:keep-alive组件停用时调用;
转载于:https://www.cnblogs.com/LXSHYZHX/p/7285926.html
关于压缩文件rar的破解我在网上找来很多的文章以及工具。能真正破解压缩文件的基本上暂时还没有发现。网上基本上流传着两种工具,一种是暴力破解,也是根据字典一个一个的去试探,当然这个基本上很难破解一个rar文件。除非那个密码设置的非常的简单,然后你有一个很好的字典。当然也要看你电脑的计算能力以及时间问题了。放心,哥们,这东西几率太小了。分享一个不可思议的黑客字典,其实我也是在网上淘到,觉得编...
调整这个样式在引入的element-ui 全局样式中去写才能生效,只需要调整图片的大小即可.el-image-viewer__img{ width: 50%; height: auto;}
system函数1.用来执行windows常用命令我们知道 C语言是没有自己的窗口的,比如我们用printf函数在黑框上输出Hello World是其实是调用了windows的DOS交互窗口。我们在C语言程序中用system可以给操作系统发送指定,其作用与直接在DOS窗口发送指令进行交互效果是一样的。比如常见的一些命令:pause:按任意窗口继续-------->防止闪屏cls:...
https://blog.csdn.net/weixin_39851914/article/details/1166335071.hty.desktop...MimeType=x-scheme-handler/hty...2.hty.desktop 放到 ~/.local/share/applications/ 或 /usr/share/applications/执行命令:update-desktop-database3.注册hty协议:xdg-mime default hty.d.
问题1. 您无权访问加载流程WebADI加载数据时报错:您无权访问加载流程。请与系统管理员联系,以便为您授予对所使用责任的访问权限Solution:切换职责“桌面集成”后再试下加载问题2. PER PER_289866_ADI_CONT_COL_FAIL(ID 1958060.1)WebADI加载数据时验证报错:PER PER_289866_ADI_CONT_COL_FAIL : 出错并且未创建集成器内容列。请检查输入值并重试。Solution: Execute API(Fnd_Diction
<1>兰伯特与半兰伯特Shader "Tang/614/Lambert"{ Properties{ _Color("Tin Color",Color) = (1,1,1,1) } SubShader{ Pass{ Tags { "LightMode" = "ForwardBase" } CGPROGRAM #pr...