当前位置:首页 » 编程软件 » mtk平台编译流程

mtk平台编译流程

发布时间: 2022-04-18 07:04:45

Ⅰ 手机方案公司需要在mtk工程源码编译后将apk预装到system/app目录下如何操作

在 Android 中,如果要使用系统限制的权限(比如 android.permission.WRITE_SECURE_SETTINGS),我们需要把程序安装到 /system/app/ 下。

下面以 SecureSetting.apk 为例,演示这个操作。需要准备一台已经获得 Root 权限的手机。

1、通过 USB 连接手机和电脑。

2、使用 adb 控制手机。

源码打印?

1. $ adb push SecureSetting.apk /sdcard/ // 上传要安装的文件,为安装做准备。
2. $ adb shell
3. $ su // 切换到 root 用户。如果没有获得 Root 权限,这一步不会成功。
4. # mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system // 让分区可写。
5. # cat /sdcard/SecureSetting.apk > /system/app/SecureSetting.apk // 这一步可以用 cp 实现,但一般设备中没有包含该命令。如果使用 mv 会出现错误:failed on '/sdcard/NetWork.apk' - Cross-device link。
6. # mount -o remount,ro -t yaffs2 /dev/block/mtdblock3 /system // 还原分区属性,只读。
7. # exit
8. $ exit

$ adb push SecureSetting.apk /sdcard/ // 上传要安装的文件,为安装做准备。
$ adb shell
$ su // 切换到 root 用户。如果没有获得 Root 权限,这一步不会成功。
# mount -o remount,rw -t yaffs2 /dev/block/mtdblock3 /system // 让分区可写。
# cat /sdcard/SecureSetting.apk > /system/app/SecureSetting.apk // 这一步可以用 cp 实现,但一般设备中没有包含该命令。如果使用 mv 会出现错误:failed on '/sdcard/NetWork.apk' - Cross-device link。
# mount -o remount,ro -t yaffs2 /dev/block/mtdblock3 /system // 还原分区属性,只读。
# exit
$ exit

Ⅱ mtk ubuntu 怎么编译modem

方法/步骤
1
将modem源码包放到要编译的路径下,解压源码包,可以得到源码目录,可以看到有很多的文件和文件夹,对其中的一些重要的文件分析。
得到的源码目录结构如下图所示

2
对make目录分析,这个目录是一个比较重要的目录,因为之后的编译都会根据这个目录下的对应工程名来进行编译
LENTK6753_65C_L1(LWG_DSDS_CMCC).mak
LENTK6753_65C_L1(LTTG_DSDS_CMCC).mak
两个文件就是手机的打电话和发短信功能。
详细的目录详情如下图所示

3
之后对这两个功能模块编译,产生自己需要的文件,通过./make.sh "工程名" new 命令来编译对应的工程模块。
编译步骤如下所示

4
同样的方法编译另一个剩下的功能弄快,详细的步骤如下所示

5
编译成功周后,生成的文件将放在下面的目录下
LENTEK6735M_65C_L_LTTG_LWG_CMCC/build/LENTK6753_65C_L1
这个目录下就是我们最终要使用的文件了

6
编译完成之后,两个工程模块都成功了,之后的工作就是重命名,将使用下面的命令对生成的文件进行重命名,其中具体的细节根据自己的路径来做相应的修改,如下所示

7
OK!完毕,这样就成功编译了MTK modem模块了

Ⅲ MTK 的下载工具如何编译我在MTK发的源码里没有找到工程文件。

下载工具不就是Flash_tool.exe么,要自己编吗?网络下一个就OK。

Ⅳ android modem模块怎么编译

(1)MT6577以及之前的chip平台(如MT6575,73等) 的modem编译环境和MTK的Feature Phone的编译环境一样,即Windows+RVCT
(2)从MT6589开始,modem编译环境已经切换到linux OS + GCC[KEYWORD]modem编译[SOLUTION]
(1)MT6577以及之前的chip平台的modem编译环境文档,请到DCC上搜索
MTK_MakeBuild_Design_Customer.docx
,该文档详细介绍环境搭建和编译流程介绍。
(2)MT6589以及后续chip的modem编译环境参考文档,请到DCC上搜索
该文档详细介绍环境搭建和编译流程介绍。

Ⅳ MTK的开发环境怎么搭建

一、开发环境设立
以下表述中提到的相关压缩包或安装文件到华禹ftp服务器下载,部分文件要到群共享里面下,那里是最新的。
华禹ftp服务器:IP:220.113.15.15,帐号为study-bbs.com,密码为study-bbs0304
P1300的QQ群号: 15762255
P1300_Build_Guide.rar来自ftp服务器,“华禹\MTK相关部分”目录下
手机开发板C语言开发视频.rar来自ftp服务器,“华禹\MTK相关部分”目录下
huayu109_ads1.2.rar来自ftp服务器,“华禹\旋风001手机模块\1.工具类”目录下
huayu102_ADS12_Patch_Windows.rar同上
huayu106_perlzip.rar同上
huayu108_SourceInsight3.5.rar同上
huayu101_p1300软件使用工具及开发指南.rar同上
huayu201_P1300_V1.7_Release.rar文件来自群共享
huayu203_P1300_V1.7_Release_patch.rar文件来自群共享
FlashTool_v3.0844.00.rar文件来自群共享
1、开发主机要求及所需工具:
操作系统:Windows 2000, WinXP. 推荐Windows 2000 with SP2 or later.
编 译 器:ADS (Arm Developer Suite) v1.2 [Build 842]
Perl解析:ActivePerl, 推荐使用ActivePerl 5.6.1版本
仿真工具:MTK PC Simulator
跟踪工具:Catcher_L1 v3.10.01,从串口输出调试信息,只做普通UI应用的话,大致不会用到,用PC仿真工具就好了
烧录工具:FlashTool_UI v3.1.05 或 FlashTool_v3.0844.00
其他:PL2303_Driver_XP2K v20,这是下载线用到的USB串口驱动,以前机器上装过PL2303驱动的就不必再装了
二、开发环境建立过程:
新建一个目录,英文的好了,否则有些工具不认识中文路径,这里以E:\MTK_P1300为例说明,下面我用文字和图片简单说明下安装过程,更详细的安装过程可以看压缩文件“手机开发板C语言开发视频.rar”中的Flash文件“P1300_Build_Env.swf”。
(1)安装ADS1.2
解压文件huayu109_ads1.2.rar到某个目录,比如说解压到“E:\MTK_P1300”,解压完后运行“E:\MTK_P1300\ADS1.2\Setup.exe”,一路按下一步,最后安装License时选定文件“E:\MTK_P1300\ADS1.2\CRACK\ license.dat”,然后接着一路下一步直到安装完。安装完后删掉目录“E:\MTK_P1300\ADS1.2\”,节省磁盘空间。
(2)安装ADS补丁
运行huayu102_ADS12_Patch_Windows.rar压缩文件中的ADS_Patch_Window.exe,这是个自解压的压缩文件,选Unzip解压到上一步ADS的安装目录(缺省是C:\Program Files\ARM\ADSv1_2),解压过程中如果问到是否覆盖,全部选覆盖好了。
(3)安装脚本解释器Perl
直接运行压缩包huayu106_perlzip.rar里面扩展名为msi的安装文件,缺省安装就好,一路Next,呵呵。
上述几步完成后,编译环境基本建立,此时可以开一个dos窗(开始菜单->运行->输入cmd->确定)看一下,安装正常应该能顺利执行以下命令,如下图:
注意看版本号,应该是ADS1.2 [Build 842],不是的话可能没打补丁,或补丁打的位置不对,请看第2步ADS补丁部分的说明并重新打一次,直到版本号对为止,哈哈。
这是perl解释器的运行画面。
注1:上述安装过程会自动创建编译环境所需的环境变量,如果发现编译不正常了,可能是安装了其他编译工具导致冲突,这时建议查看下系统环境变量,把Perl和ADS的安装目录调到最前面,同时从path中去掉可能会产生冲突的编译工具链的路径(例如winavr),如下图所示(我是安装到D盘滴,缺省是C盘,不过我C盘几乎被我塞满了):
如果嫌改path麻烦(因为要用到其他编译工具链的时候还得改回去),还有一种办法,就是改make.bat批处理,具体见注4中相关说明。
注2: 如果安装ADS时,改变了默认安装路径,需要修改源码中的设置,源码目录树解压过程见模拟器编译环节相关介绍。
1.             make\Option.mak  
2.             ----------------------------------  
3.             ifeq ($(strip $(COMPILER)),ADS)  
4.           DIR_ARM=  c:\progra~1\arm\adsv1_2  # 修改这里 
5.           DIR_ARM := $(strip $(DIR_ARM))  
6.           DIR_TOOL   =  $(DIR_ARM)\bin  
7.           DIR_ARMLIB =  $(DIR_ARM)\lib  
8.           DIR_ARMINC =  $(DIR_ARM)\include  
9.             endif  
10.       ------------------------------------------------ 
比如改装到D盘了,这里把红色部分“c”改成“d”就好了
(4)代码编辑环境
运行压缩文件huayu108_Source Insight3.5.rar中的安装文件安装即可。至于编辑器,这个看个人喜好了,不过Source Inside看代码蛮方便的。
(5)PC机模拟器
模拟器MTK PC Simulator是用来在PC上仿真调试用的,要安装VC6 SP6(同时要安装Uuicode 静态和动态库,没有装Unicode库的可以用“huayu103_MTK模拟器DLL补丁.zip”中的库,拷到系统目录“%windir%\system32”下即可)。我机器上的VC是有装Unicode库的,没装过Unicode库的如果在模拟器编译或运行中出现问题,建议重装下VC6,安装时勾选Unicode库,并打上相关补丁到SP6。
模拟器能模拟真机的大部分行为,这样能给调试带来很大便利,不需要每次改动都要烧录。
模拟器要从源码编译,解压压缩包“huayu201_P1300_V1.7_Release.rar”里面的文件“HUAYU_P1300_V1.7_Release.rar”到目录“E:\MTK_P1300”,此时会出现目录“E:\MTK_P1300\P1300_V1.7_Release”,这就是P1300的代码目录树了;接着打上最新的补丁,解压压缩包“huayu203_P1300_V1.7_Release_patch.rar”里面的压缩文件“HUAYU_P1300_V1.7_Release_patch.rar”到目录
“E:\MTK_P1300\P1300_V1.7_Release”,解压时选择全覆盖以替换被修改过的文件,打补丁之前对目录树里面的文件进行修改过的,需要手动再加上去。
编译PC仿真器之前需要先把刚才上面得到的目录树build一次,开一个dos窗,盘符和目录转到代码目录树对应的盘符和目录,例如:
1.              E:  
2.             cd E:\MTK_P1300\P1300_V1.7_Release\  
3.           make new 
注3:第一次make的时候要用“make new”,make new的时间比较长(慢的机器搞不好要2小时以上),编译过程中间会出现一些文件找不到的信息,只要编译过程没意外终止,那些信息可以忽略。编译日志文件位置: build\NEOTEL25_06B\log\,要查看编译过程有啥问题就看这个目录下的文件了;生成的bin文件位置: build\NEOTEL25_06B\*.bin,下载烧录就是烧bin文件。
这里顺带介绍下build的命令格式:
make new 清除后重新编译整个项目
make resgen 重新生成资源
make remake重新编译链接项目
make viewlog xxx 查看模块xxx的编译日志
make查看可以用make选项帮助信息
注4:如果机器上装了其他gcc编译工具链(比如winavr之类)的话可能要手动改下Path,否则编译会出错,修改Path的方法见注1,也可以修改批处理文件“E:\MTK_P1300\P1300_V1.7_Release\make.bat”,在“perl make2.pl %*”之前加上下面两句:
1.           set PERL5LIB=D:\perl\lib  
2.           set PATH=D:\perl\bin;d:\progra~1\arm\adsv1_2\bin;E:\MTK_P1300\P1300_V1.7_Release\tools;c:\windows\system32;c:\windows;c:\windows\system 
注意,上面的路径是我机器上的,不是缺省安装路径,要根据自己的实际安装路径做修改。
下面开始编译PC仿真器了,用VC6打开工程文件“E:\MTK_P1300\P1300_V1.7_Release\plutommi\mmi\ PC_Simulator.dsw”,然后开始编译,编译时间比较长,具体看机器配置了,这时又可以干点别的啥了,呵呵。
因为仿真器工程涉及文件较多,编译费时,建议编译过程中电脑上少开窗口,特别是网络类的,如QQ,有时会发现开QQ后,编译过程中VC会挂死,呵呵。有可能是开QQ后防火墙过滤网络数据占用较多系统资源,如果发现VC编译特别慢或干脆挂死,可以重启动一下电脑,只开必要的窗口,然后开始编译。
如果编译过程中发现怪异的问题,如:
1.           incomingstringiddef.h(120) : error C2059: syntax error : 'constant'    
2.           或者 
3.           error C2065: 'STR_CM_REDIAL' : undeclared identifier   
4.           之类 
5.            
这个时侯你可能需要看一下你VC相关路径的设置顺序,如下图:
把VC原本的头文件路径调整到最前面,我刚开始编译的时候SDK的头文件在前面,编译总是通不过,改一下就好了,库也一样都调整下比较保险,呵呵。
(6)Tracer跟踪工具
解压文件P1300_Build_Guide.rar到E:\MTK_P1300,然后在文件管理器进入目录“E:\MTK_P1300\P1300_Build_Guide”,接着解压Catcher_L1_v3.10.01.zip到当前目录下的Catcher_L1_v3.10.01子目录,进入子目录Catcher_L1_v3.10.01,发送一个Catcher.exe的快捷方式到桌面。
在需要用到TRACE的时候,在代码中使用函数
void kal_prompt_trace(mole_type mod_id, const kal_char *fmt,...); 打印需要查看的信息,使用Catcher跟踪查看。
这个有点类似Linux的Kernel Debug工具,具体使用方法见文档《cather使用手册.doc》,这个文档可在压缩包“huayu101_p1300软件使用工具及开发指南.rar”里面找到。
(7)烧录工具
解压文件“E:\MTK_P1300\P1300_Build_Guide\ FlashTool_UI_exe_v3.1.05.zip”到当前目录,然后进入目录“E:\MTK_P1300\P1300_Build_Guide\FlashTool_v3.1.05”,发送一个Flash_tool.exe的快捷方式到桌面好了。
还有个下载工具FlashTool_v3.0844.00.rar,也是不用安装,解压后直接用的,据说烧录速度比上面那个快。
具体使用方法见文档《flash_tool_MT平台使用教程.doc》,这个文档可在压缩包“huayu101_p1300软件使用工具及开发指南.rar”里面找到。
(8)USB串口下载线驱动
运行压缩文件
1.           “E:\MTK_P1300\P1300_Build_Guide\ PL2303_Driver_XP2K_v20.zip” 
里面的可执行文件进行安装,一路下一步,这里不再赘述。
nucleus实时操作系统MTK手机软件系统工程和配置简介
MTK使用了nucleus实时操作系统,在其上做了个内核抽象层的封装,以适应多种实时操作系统,如oscar、ThreadX、nucleus。整个软件系统包括nucleus操作系统、平台设备驱动、协议栈、文件系统、WGUI、MMI、J2ME等。在这里MMI部分几乎包括了操作系统内核、协议栈、文件系统之上的所有部分,其中WGUI也在其中。
MTK的PC模拟版使用VC的编译器和链接器生成,ARM版使用ADS1.2的编译器和链接器生成。因为MTK的整个软件系统是一个很庞大而且复杂的工程,并且要支持多个MTK的产品系列和多家客户的客户化支持,使用集成开发环境(IDE)已经无法胜任,而且很难做到整个工程的自动构建和资源、代码的生成。所以MTK的软件系统使用了windows下的GNU开发工具链(MinGW)来进行工程的管理、配置和构建,MTK将MinGW放到了第三方工具中。
另外还使用了perl脚本来解析用户输入的命令行参数,因此第三方工具中还包含了ActivePerl(windows下的perl解释器)。不过,整个软件系统并没有使用MinGW的全部工具,好象只使用了make这个工具,由几个Makefile控制了构建的过程,在编译和链接时根据最终生成PC模拟版还是ARM版而分别调用VC的编译器和链接器或ADS1.2的编译器和链接器。

Ⅵ mtk平台修改init.rc后如何快速编译啊

修改init.rc文件后,一般只需要做以下快速编译即可生成新文件。
./mk bootimage

Ⅶ 如何编译 MTK 的模拟器

MTK的emulator是基于MTK平台的codeabse编译得到用来模拟真机的虚拟Device,以下是具体的操作步骤:
1. Build MTK SDK Packages
-对于mt6572以前的chip,用如下的命令编译:
./makeMtk banyan_addon
-从mt6572开始的chip,由于mt6572之后CPU开始支持X86架构,其performace会更好,mt6572之后,建议编译x86的emulator来使用.

./makeMtk banyan_addon_x86

编译完成后会在out/host/linux-x86/sdk_addon下生成MTK的SDK包,比如mtk_sdk_api_addon-17.1.zip,(其中17是android api level)

2. 解压mtk_sdk_api_addon_17.1.zip
将解压后的mtk_sdk_api_addon-17.1整个文件夹放在android原本的sdk的add-ons目录下。

3. 拷贝emulator相关的执行文件到android sdk tool下:
- 对ICS 4.0之前的版本:
进 入android-sdk-windows\add-ons\banyan_addon_ALPS.GB.FDD.MP.V1_eng\tools 目录下,将其中的 emulator.exe 或者 emulator(如果使用Linux的SDK的话)复制出来,覆盖android-sdk-windows\tools下的相应 emulator.exe

- 对ICS 4.0及之后的版本:
将 mtk_sdk_api_addon-15.1\emulator对应文件夹下的emulator,emulator-arm,emulator-x86 这三支文件替换android原本sdk的tools目录下的emulator,emulator-arm,emulator-x86这三支文件(建议备 份google原始sdk下的emulator,emulator-arm,emulator-x86,以便后面用到Google emulator)。

4. 创建新的AVD
在Target里面选择带有MediaTek标志的,然后启动这一AVD就可以了
PS:创建AVD时需要同步将SDK的版本升级到相对的android版本,比如JB2对应的android API level 17,则对应SDK的版本也要升级到level 17,否则将在创建AVD的时候将load不出带MediaTek标志的target

Ⅷ 如何学习MTK 编译android系统的framework层源码,需要看一些什么文档,最近在公司需要学习、

mtk有个叫makeMtk的脚本文件,直接执行就行,后面参数加上自己要编译的模块,比如./makeMtk -t mm frameworks/base/core/res

Ⅸ MTK 如何配置内核编译选项

使用make menuconfig ,来配置kernel的选项
a、首先通过下面的方式进入menuconfig, 在project 下输入:

cd kernel
TARGET_PRODUCT=<project> make menuconfig

在弹出的窗口后,enter < / > 进入查找窗口,输入要查找的kernel feature名称

查到该feature后,选择开启或者关闭该feature, 保存,退出menuconfig
b、 完成上述配置后,将.config复制到mediatek/config/$project/autoconfig/kconfig/目录下并重命名为project
然后进行编译kernel

Ⅹ MTK平台modis编译不通过如何产生bin文件,是不是new通过就能产生bin文件

实际上是make产生bin文件的。new的过程就包括make了。比如new没有通过,可是已经出现log文件,在修改错误后直接make就行了,而不必再new一遍。编译modis跟bin文件没有关系。

热点内容
制作自解压安装 发布:2025-03-20 05:41:49 浏览:303
华为连接电视密码是多少 发布:2025-03-20 05:31:11 浏览:493
算法第五版 发布:2025-03-20 05:17:57 浏览:730
湖南台访问 发布:2025-03-20 05:10:32 浏览:38
脚本和秒抢 发布:2025-03-20 05:06:29 浏览:591
b35锁如何设置密码 发布:2025-03-20 05:06:27 浏览:905
淘宝如何租云服务器 发布:2025-03-20 05:05:12 浏览:213
编程忌讳 发布:2025-03-20 04:58:35 浏览:427
国家知识产权专利数据库 发布:2025-03-20 04:54:29 浏览:416
win7怎么给文件夹设密码 发布:2025-03-20 04:52:38 浏览:725