mtk编译命令与工具使用
MTK 环境配置与编译运行
MTK 环境配置与编译运行一,MTK环境配置1,在配置环境之前我们需要安装以下工具ADS1.2ADS1.2_update_848.exeMSYS 版本:1.0.10MinGW 版本:3.1.0Gcc-core-3.3.1Gcc-g++-3.3.1ImageMagick 版本:6.3.6 Q167-zip 版本:3.131.1安装注意点:1.1.1安装MinGW后,然后解压Gcc-core-3.3.1,Gcc-g++-3.3.1,并将解压后的两个文件文件夹复制到MinGW安装路径下1.1.2安装ImageMagick,安装到Select Additional Tasks时,所有的选项全取消1.1.3安装ADS,进入ARM运行Setup.exe,然后运行ADS-patch-b848补丁。
1.2复制到项目:1.2.1拷贝..\7_Zip\7z.exe至..\plutommi\Customer\ResGenerator,并改名为7za.exe1.2.2拷贝..\msys\1.0至..\Tools\MSYS1.2.3拷贝..\ImageMagick-6.2.5-Q16文件夹下全部文件至..\plutommi\Customer\ResGenerator目录下1.3检测环境:1.3.1运行Tools\chk_env.exe,如果环境配置好则输出Build environment is ready!1.3.2检测makefile配置ADS编译器路径,打开..\make\option_make查看ifeq ($(strip $(COMPILER)),ADS)DIR_ARM = c:\progra~1\arm\adsv1_2DIR_ARM := $(strip $(DIR_ARM))DIR_TOOL = $(DIR_ARM)\binDIR_ARMLIB = $(DIR_ARM)\libDIR_ARMINC = $(DIR_ARM)\includeendif二,MTK编译与运行MTK的编译过程:在windows命令行下通过Makefile文件执行相应的prel脚本或c程序,将资源包生成c源程序,并与相应模块的c程序.o,.lib或.obj的中间代码,最终生成在手机上使用的.bin文件和在模拟器上使用的mmiresource.dll资源文件。
Mtk编译说明
MTK学习任务1、搭建编译环境首先需要安装如下3种软件:1)VC++6.0软件2)PDF(安装版)3)Excel软件其次,安装“MTK编译环境”目录下3个软件:Ads1.2,4554_ADS12_848_Windows.exe(UZIP),ActivePerl,默认安装即可。
另外:可以安装sourceInsight软件,以方便代码阅读。
2、工程编译Make目录下的F619_GEMINI_GPRS.mak标识了本工程的工程名为F619_GEMINI,obj文件生成目录为build\F619_GEMINI\gprs,生成的bin文件位于build\F619_GEMINI 目录下(F619_GEMINI_PCB01_gprs_MT6225_S00.GM700_V00.bin)。
常用编译指令(各编译参数的具体含义请参考System Architecture.pdf)命令格式:make 工程名obj生成路径命令模块(可选)cmd工具目录:工程目录下的cmd.exemake F619_GEMINI gprs new编译新工程make F619_GEMINI gprs r(remake)只编译有更新/改动的工程make F619_GEMINI gprs new_modis重新编译modismake F619_GEMINI gprs r mmi_app只编译mmi_app工程(mmi_app为需要编译的工程,可以是项目中的其他工程)make F619_GEMINI gprs emiclean 编译。
清理excelmake F619_GEMINI gprs emigen添加资源后必须resgen编译,方可生效。
E:\gm700_4\build\F619_GEMINI\log目录下记录了所有编译的信息,使用make命令编译工程时,可以在此目录下查阅到相关的编译信息。
E:\gm700_4\build\F619_GEMINIMT6225.log记录了整个F619工程的总体编译情况添加工程文件在E:\gm700_4\make\plutommi\mmi_app目录下添加新增的文件路径在E:\gm700_4\make\plutommi\mmi_framework目录下mmi_framework.inc文件中添加新增的头文件路径具体的参考文件中的路径加入格式。
MTK通用编译说明
./mk mt6582_tablet_8193_ddr3 remake //(不会gencode, new才会从codegen.dws重新gencode)
./mk mt6582_tablet_8193_ddr3 snod
//重新生成时序
./mk lcsh73_gb emigen
./mk n codegen //GPIO资源映射修改重编
./mk n pl lk k //GPIO资源映射修改重编
./mk n pl lk k bootimage//修改驱动重编内核,生产bootimage
对于不同内存大小(512MB/1GB)的机器,需要修改:
mediatek/custom/mt6582_tablet_8193_ddr3/preloader/inc/custom_MemoryDevice.h
mediatek/custom/mt6582_tb_kk/preloader/inc/custom_MemoryDevice.h (KITKAT)
一般内核改动:
tp camera alsps battery lcd:
project/mediatek/custom/mt6582_tablet_8193_ddr3/kernel
project/mediatek/config/mt6582_tablet_ห้องสมุดไป่ตู้193_ddr3
./mk mm package/app/deskclock
./mk elink82_tb_kk r k //编译内核
./mk rk // 内核
./mk bootimage
MTK编译命令详细介绍
mcp_check cleanlog cleanbin genverno libs $(BIN_FILE) done
功能: remake是重新编译整个工程的ARM版,该动作只是简单的重新编译链接有改动的部分。它不检查依赖关系.不扫描资源,只扫描代码的改变,有改变的重编,资源和无改变的代码不编。
过程简要说明:remake->mcp_check->cleanlog->cleanbin->genverno->libs->$(BTLD_BIN_FIKE)->cmmgen->done。
依赖指令:mcp_check,cleanlog,cleanbin,genverno,libs,$(BIN_FIKE),cmmgen,done。其中最重要的两个指令是libs,$(BIN_FIKE)。Libs调用编译器和连接器将各个模块目录下的C文件编译连接为独立的库。$(BIN_FIKE)是将各个模块编译连接的库和mtk_lib目录下的库一起连接起来得到一个映像文件,然后使用ADS的工具fromelf将映像文件生成以变量BIN_FILE命名的二进制文件,该文件可以下载到硬件板上运行。
New 清除并重新编译所有的文件
主要完成工作 gsm2.mak
cleanall cmmgen mmi_feature_check asngen codegen asnregen operator_check_lite update
功能:全新开始构建整个工程的ARM版,包括图片、声音、字符串等资源都要重做。在构建工程过程中,清除所有的目标文件,库文件,日志文件等。New指令还会自动创建必要的目录、移除临时文件和中间脚本、更新日志文件。
MTK编译环境及常用工具介绍
编译环境1. 安装ADS_1.2.848。
2. 安装ActivePerl-5.8.8.822或更高版本。
3. 安装GnuWin32 3.81或更高版本。
4. 安装vs6.0。
5. 检查开发环境是否搭建成功:\...\软件包根目录\tools\chk_env.exe编译命令MTK常见的编译命令有new,update,remake,resgen,clean,模拟器的编译命令有clean_modis,gen_modis,codegen_modis,new_modis,remake_modis等。
1、new功能:全新开始构建整个工程的ARM版,包括图片、声音、字符串等资源都要重做。
在构建工程过程中,清除所有的目标文件,库文件,日志文件等。
New指令还会自动创建必要的目录、移除临时文件和中间脚本、更新日志文件。
过程简要说明:new->cleanall->sysgen->ckscatter->mmi_feature_check->asngen->codegen->asnregen-> operator_check_lit->$(BTLD_BIN_FILE)->update。
依赖指令:new依赖的其他指令最多,包括cleanall,sysgen,ckscatter,mmi_feature_check,asngen,codegen,asnregen,operator_check_l ite,update.用途:new指令是最彻底也是耗时最长的一个动作,一般得到一个新的MTK发布版本后由项目负责人要做一次。
2、update功能:update是重新更新整个工程的ARM版,该动作会扫描工程中文件和库的依赖关系,若依赖关系有变化会建立新的依赖关系,随后根据新的依赖关系重新编译链接有改动的部分。
Update指令不依赖cleanall指令,所以它不会删除目标文件和库文件,也不会去更新日志文件和创建目标目录,这一点和remake相像,这也是为什么执行时间比new短的原因。
详解MTK编译命令及相关文件
详解MTK编译命令及相关文件MTK编译分资源的编译和代码的编译:一资源的编译1 在如下的情况下,需要重新编译资源:(1) 修改了字符串资源文件(Ref_list.txt)、字库文件(FontRes.c,L_**.h)、MMI配置文件(MMI_featuresPLUTO.h)等,这些文件位于..\plutommi\Customer\CustResource\PLUTO_MMI\ ;(2) 修改了MMI资源装载配置文件,这些文件位于..\plutommi\Customer\CustResource\PLUTO_MMI\Res_MMI 目录下,这个目录下都是Res_*.*文件,是各个AP或模块的资源装载文件,包括菜单、图片和字符串资源的装载配置;注意:Cust*.*文件是资源编译生成的,不能手动修改。
2 编译方法(1)在DOS环境下执行资源编译命令resgen即可;(2)进入..\plutommi\Customer目录,执行remakeResource.bat。
若是在模拟器上使用,则还需要在VC环境下build一下,就可以看到效果了。
3 与资源编译相关的文件ResGenerator_HW.bat在编译手机目标板工程时,有“new”,“resgen”等选项时,自动调用;ResGenerator.bat手机PC模拟器工程中,添加新资源后,需要手动调用;remakeResource.bat手机PC模拟器工程中,只替换图片或更新字符串等情况下,需要手动调用;res_gen.txt资源编译的log文件,在build目录下;Makefile..\plutommi\Customer\ResGenerator\Makefile此文件是资源装载预编译程序的Makefile;PopulateRes.c..\plutommi\MMI\Resource\PopulateRes.c执行资源装载,主体是函数PopulateResData(),mtk_resgenerator.exe在执行时会调用该函数;MMIDataType.h..\plutommi\mmi\Inc\MMIDataType.h定义AP的ID范围。
mtk6261 编译指令
mtk6261 编译指令MTK6261编译指令详解MTK6261是联发科技公司推出的一款低功耗、高性能的芯片,广泛应用于物联网设备、智能穿戴设备等领域。
在开发MTK6261芯片的应用程序时,需要编写相应的指令来控制芯片的各项功能。
本文将详细介绍MTK6261编译指令的使用方法。
一、编译指令的基本语法MTK6261编译指令使用C语言的语法,通过编写一系列的指令来实现对芯片的控制。
指令通常包括关键字、参数和注释等几个部分。
例如,要设置芯片的工作模式为低功耗模式,可以使用以下指令:```void setLowPowerMode(){// 设置芯片为低功耗模式// 具体的设置代码}```在上面的例子中,`void setLowPowerMode()`是指令的关键字,`setLowPowerMode`是指令的名称,`{}`内的代码是指令的具体内容,`//`后面的注释是对指令功能的解释。
二、常用编译指令1. 设置芯片工作模式设置芯片的工作模式是MTK6261编译指令中最常用的指令之一。
通过设置不同的工作模式,可以实现芯片的不同功能。
例如,要设置芯片为低功耗模式,可以使用以下指令:```void setLowPowerMode(){// 设置芯片为低功耗模式// 具体的设置代码}```2. 控制GPIO引脚MTK6261芯片有多个GPIO引脚,可以用来连接外部设备。
通过控制GPIO引脚的电平,可以实现与外部设备的通信。
例如,要将GPIO1引脚设置为高电平,可以使用以下指令:```void setGPIO1High(){// 将GPIO1引脚设置为高电平// 具体的设置代码}```3. 设置定时器MTK6261芯片内置了多个定时器,可以用来实现定时任务。
通过设置定时器的参数,可以实现定时触发某些操作。
例如,要设置定时器1的计数时间为1秒,并在计数结束后执行某个操作,可以使用以下指令:```void setTimer1(){// 设置定时器1的计数时间为1秒// 具体的设置代码}```4. 控制串口通信MTK6261芯片支持串口通信,可以与其他设备进行数据交换。
Mtk Android编译命令
banyan_addon 建立MTK sdk addon
cts 建立cts包
bootimage 编译boot映像
cacheimage 编译cache映像
systemimage 编译系统映像
mrproper 移除所有产生的文件+config+。。。
mm 通过android本地命令“mm”编译模块
emigen 产生EMI设置源代码
nandgen 生成支持nand flash设备列表
codegen 生成跟踪DB(META/凯瑟等使用的工具)。
userdataimage 编译用户数据映像
target--packege 编译目标文件包
updataepackege 编译更新包
dist 编译分发包
Modules:
pl, preloader : Specify to build preloader.
snod 没有依赖的情况下去编译系统映像
recoveryimage 编译恢复映像
secroimage 编译secro映像
factoryimage 编译工厂映像
userdataimagenodeps 没有依赖的情况去编译用户数据映像
NULL 编译所有
(makeMtk|mk) [options] project actions [modules]
options:
-t 打印标准输出信息
-o 通过附加参数去make
project:
一个可用的项目(可以用mk listp来查看有哪些可用项目),或则缺省(延续上一次的项目)
lk : Specify to build little kernel.
ub, uboot : Specify to build uboot.
MTK程序编译详解
REL_CR_MMI_$(strip $(PROJECT)).mak
其中CUS_REL_OBJ_LIST这个变量存储了连接过程中所需要的文件名称
4.make\$(strip $(CUSTOMER))_$(strip$(PROJECT)).mak文件的功能。
Endif
如果**作系统为NUCLEUS,那么COMPLIST为后面的值,COMPLIST为所要编译的文件列表,里面存放了很多*.inc文件,展开后就变为
config\include
stacklib\include
adaptation\include
kal\include等等
Endif
COMMINCDIRS变量在先包含了基本功能模块的inc目录后再包含如下文件
COMMINCDIRS += $(DIR_ARMINC) $(CUSTOM_COMMINC),
6.Option.mak中定义了一些附加功能模块的编译模式(是否被编译,被编译成什么样的结果),比如说蓝牙,UART3,WIFI,USB,WAP等等,还有一些编译器的设置。
update所执行的指令
update : cleanlog cleanbin mcddll_update codegen resgen cksysdrv remake
remake所执行的指令
remake : mcp_check cleanlog cleanbin genverno libs $(BIN_FILE) done
resgen用来编译资源文件:Res_**.c
(echo CUSTOM_OPTION = $(foreach def,$(BOARD_VER) $(PLATFORM) $(LCD_MODULE) $(EXT_CAM_MODULE)$(CMOS_SENSOR),-D "$(def)") \>$(MMIDIR)\customer\resGenerator\custom_option.txt)
MTK程序编译--01
MTK程序编译--01一、MTK手机软件系统的构建过程Pc模拟版的构建通过调用如下命令实现。
system("$msdev MoDIS.dsw /MAKE \"$argu - Win32 $modisDir\"/OUT ${MoDISLogDir}\\${argu}.log")在这里$msdev就是VC的msdev,通过VC的工程文件MoDIS.dsw和后面的参数进行具体的构建过程。
熟悉VC工程的朋友应该比较清楚,因此就不再具体解释了。
之后将只以ARM版为主来讲解整个工程的构建过程。
ARM版的构建通过调用如下命令实现。
system("${makeCmd} -f${makeFolder}${myMF} -r -RCUSTOMER=$custom PROJECT=$project $action")在这里${makeCmd}是tools\make.exe,即GNU的make,${makeFolder}${myMF}是make\Gsm2.mak,$action是new、update、remake等。
变量CUSTOMER和PROJECT分别是客户名和项目名,在构建过程中将根据此两个变量的值选定项目相关的配置文件,从而实现客户化的定制。
通过给make指定ARM版的核心Makefile文件Gsm2.mak,开始了ARM版的构建过程。
Gsm2.mak文件中包含了Option.mak这个配置用的Makefile文件,另外还包含了一些以.tmp和.bld为后缀的由perl脚本make2.pl 生成的临时配置文件。
这些临时配置文件主要是一些action如clean、remake等所需的变量设置,及客户化和版本号等的一些信息。
Gsm2.mak控制了new、update、remake等动作的过程上面的构建过程的几个步骤中,最重要的两个步骤是libs、$(BIN_FILE) 。
Mtk编译说明
MTK学习任务1、搭建编译环境首先需要安装如下3种软件:1)VC++6.0软件2)PDF(安装版)3)Excel软件其次,安装“MTK编译环境”目录下3个软件:Ads1.2,4554_ADS12_848_Windows.exe(UZIP),ActivePerl,默认安装即可。
另外:可以安装sourceInsight软件,以方便代码阅读。
2、工程编译Make目录下的F619_GEMINI_GPRS.mak标识了本工程的工程名为F619_GEMINI,obj文件生成目录为build\F619_GEMINI\gprs,生成的bin文件位于build\F619_GEMINI 目录下(F619_GEMINI_PCB01_gprs_MT6225_S00.GM700_V00.bin)。
常用编译指令(各编译参数的具体含义请参考System Architecture.pdf)命令格式:make工程名obj生成路径命令模块(可选)cmd工具目录:工程目录下的cmd.exemake F619_GEMINI gprs new编译新工程make F619_GEMINI gprs r(remake)只编译有更新/改动的工程make F619_GEMINI gprs new_modis重新编译modismake F619_GEMINI gprs r mmi_app只编译mmi_app工程(mmi_app为需要编译的工程,可以是项目中的其他工程)make F619_GEMINI gprs emiclean编译。
清理excelmake F619_GEMINI gprs emigen添加资源后必须resgen编译,方可生效。
E:\gm700_4\build\F619_GEMINI\log目录下记录了所有编译的信息,使用make命令编译工程时,可以在此目录下查阅到相关的编译信息。
E:\gm700_4\build\F619_GEMINIMT6225.log记录了整个F619工程的总体编译情况添加工程文件在E:\gm700_4\make\plutommi\mmi_app目录下添加新增的文件路径在E:\gm700_4\make\plutommi\mmi_framework目录下mmi_framework.inc文件中添加新增的头文件路径具体的参考文件中的路径加入格式。
mtk程序开发入门
MTK入门目录一.添加项目1.添加项目文件2.修改配置文件3.编译系统4.添加到Modis二.添加资源方法一:用MTK自带的资源生成工具1.增加系统支持1)添加资源定义文件2)将程序头文件添加到资源的Makefile3)调用资源加载函数2.定义资源ID3.添加字符串资源1)在系统字符串列表中添加2)修改资源定义头文件3)修改void PopulateFirstAppRes(void)4)使用字符串4.添加菜单5.添加图片方法二:用MTKRESTOOL_v1.5.exe资源生成工具一.添加项目1.添加项目文件:1)在plutommi\mmi文件夹下新建FirstApp文件夹2)在plutommi\mmi\FirstApp文件夹下新建FirstAppInc和FirstAppSrc文件夹.3)在plutommi\mmi\FirstApp\FirstAppInc文件夹下新建四个头文件:文件名功能内容FirstAppDefs.h 定义程序模块的资源ID,例如字符串/图-片etc.-FirstAppProt.h 提供函数声明,但只能提供给本我们的程序的代码调用.FirstAppTypes.h 提供结构体,常量的定义.FirstAppGprot.h 提供函数声明,主要提供给外部使用. #ifndef _FIRSTAPPGPROT_H#define _FIRSTAPPGPROT_Hextern void EntryFirstAppScreen(void);extern void ExitFirstAppScreen(void);#endif4)plutommi\mmi\FirstApp\FirstAppSrc文件夹下新建一个源文件:FirstAppSrc.c内容参见:FirstAppSrc.c.12.修改配置文件:0)设置程序模块的开关:在plutommi\mmi\inc\MMI_features.h文件最后一个语句#endif前面加上#ifndef __MMI_FIRSTAPP__#define __MMI_FIRSTAPP__#endif奇怪:竟然不能直接定义,必须要使用ifndef包含!1)在make\plutommi\mmi_app文件夹下(1) 在mmi_app.inc文件末尾添加:plutommi\mmi\FirstApp\FirstAppInc(2) 在mmi_app.pth文件末尾添加:plutommi\mmi\FirstApp\FirstAppSrc(3) 在mmi_app.lis文件末尾添加:plutommi\mmi\FirstApp\FirstAppSrc\FirstAppSrc.c以上三个文件在sourceinsight中可能找不到,请直接到相应的文件夹修改.2)为模块增加开关在make\Option.mak文件末尾添加COM_DEFS += __MMI_FIRSTAPP__3)修改plutommi\mmi\Organizer\OrganizerSrc\Organizer.c文件(1) 添加头文件:#ifdef __MMI_FIRSTAPP__#include "FirstAppGprot.h"#endif(2)利用Organizer入口实现我们自己的功能:找到函数void EntryOrganizer(void),添加以下代码函数最前面:#ifdef __MMI_FIRSTAPP__EntryFirstAppScreen();#else在函数末尾添加#endif3.编译系统:打开工程文件夹下的cmd.exe文件,输入mk,回车,选1即new一次.4.添加到Modis:1)在MoDIS\mmi_app\mmi_app.ini文件末尾添加/I "..\..\plutommi\mmi\FirstApp\FirstAppInc"2)打开MoDIS.dsw,在mmi_app项目中添加FirstAppSrc.c文件.也可以在mmi_app\mmi_app\mmi_app.dsp倒数第三行添加# Begin Source FileSOURCE=..\..\plutommi\mmi\FirstApp\FirstAppSrc\FirstAppSrc.c# End Source File3)编译运行,然后找到工具箱即可进入我们的程序.二.添加资源方法一:用MTK自带的资源生成工具1.增加系统支持1)添加资源定义文件:在plutommi\Customer\CustResource\PLUTO_MMI\Res_MMI文件夹下新建Res_FirstApp.c.加入资源定义函数: void PopulateFirstAppRes(void);内容参见:Res_FirstApp.c2)将程序头文件添加到资源的Makefile:打开文件plutommi\Customer\ResGenerator\MakeFile,在-I "../customerinc" \下添加-I "../../MMI/FirstApp/FirstAppInc" \3)调用资源加载函数:打开plutommi\mmi\Resource\PopulateRes.c文件(1)找到:#ifdef __MMI_CCA_SUPPORT__extern void PopulateCCARes(void);#endif在其下面添加:#ifdef __MMI_FIRSTAPP__extern void PopulateFirstAppRes(void);#endif(2)找到:PRINT_INFORMATION(("Populating Alarm Resources\n"));PopulateAlarmRes();在其下面添加#ifdef __MMI_FIRSTAPP__PRINT_INFORMATION(("Populating FirstApp Resource\n"));PopulateFirstAppRes();#endif至此资源已添加进来了.2.定义资源ID1)定义ID打开文件plutommi\mmi\Inc\MMIDataType.h找到RESOURCE_BASE_RANGE(HEALTH_BMI, 50),在其下面添加:#ifdef __MMI_FIRSTAPP__RESOURCE_BASE_RANGE(FIRSTAPP, 50),#endif2)为ID定义别名:在plutommi\mmi\Inc\MMIDataType.h中找到#define RMGR_BASE ((U16) RESOURCE_BASE_RMGR)#define RMGR RMGR_BASE#define RMGR_BASE_MAX ((U16)RESOURCE_BASE_RMGR_END) RESOURCE_BASE_TABLE_ITEM(RMGR)在其下面添加:#ifdef __MMI_FIRSTAPP__#define FIRSTAPP_BASE ((U16) RESOURCE_BASE_FIRSTAPP)#define FIRSTAPP FIRSTAPP_BASE#define FIRSTAPP_BASE_MAX (U16) RESOURCE_BASE_FIRSTAPP_END) RESOURCE_BASE_TABLE_ITEM(FIRSTAPP)#endif3.添加字符串资源1)在系统字符串列表中添加打开plutommi\Customer\CustResource\PLUTO_MMI\ref_list.txt,中间用tab键隔开,在末尾处添加STR_ID_FIRSTAPP Undefined 30 FirstApp FirstApp 第一个程序第一个程序2)修改资源定义头文件,参见FirstAppDefs.h.3)修改void PopulateFirstAppRes(void)在函数里添加ADD_APPLICATION_STRING2(STR_ID_FIRSTAPP, "FirstApp", "name of FirstApp");4)使用字符串修改FirstAppSrc.c.4.添加菜单整个MMI中用到的菜单ID都位于plutommi\mmi\Inc\GlobalMenuItems.h文件中。
MTK编译环境及常用工具介绍
MTK编译环境及常用工具介绍MTK(联发科技)是一家全球知名的芯片设计公司,广泛应用于移动设备、智能家居、物联网等领域。
在进行MTK芯片编译时需要配置相应的编译环境和使用常用工具,下面将介绍一些MTK编译环境和常用工具。
1.编译环境配置:(1)操作系统:MTK芯片的编译环境主要在Linux系统下进行,推荐使用Ubuntu等常见的Linux发行版。
(3)必要软件包:在编译MTK芯片时,需要安装一些必要的软件包,如make、gcc、g++、flex、bison等。
可以通过apt-get等包管理工具进行安装。
2.常用工具介绍:(1)MTK编译工具链:MTK提供的编译工具链包括编译器、链接器、调试器等,可以用于编译构建MTK芯片的固件。
编译工具链还包括了一些调试工具,如gdb调试器,可以用于调试MTK芯片的应用程序。
(2)MTKSDK:MTK提供了一套完整的软件开发工具包(SDK),包含了一系列的API、驱动程序、开发工具等,可以用于开发MTK芯片的应用程序。
MTKSDK还提供了一些示例代码和开发文档,方便开发者进行开发工作。
(3)MTK Flash Tool:MTK Flash Tool是一款用于MTK芯片刷机的工具,可以将固件刷入到MTK手机中。
该工具可以对手机进行读写分区、格式化、备份、恢复等操作,对于开发者来说非常有用。
(4)MTK Log Tool:MTK Log Tool是一款用于收集和分析MTK芯片的日志的工具,可以帮助开发者定位和解决问题。
该工具可以实时监控日志输出,并提供、过滤、导出等功能,方便开发者进行日志分析工作。
(5)MTK Trace Tool:MTK Trace Tool是一款用于跟踪MTK芯片的运行轨迹的工具,可以帮助开发者分析代码的执行过程。
该工具可以跟踪函数调用、变量赋值、条件判断等操作,生成相应的跟踪报告,方便开发者进行代码优化和性能分析。
(6)MTK WiFi Tool:MTK WiFi Tool是一款用于调试和测试MTK芯片的WiFi模块的工具,可以帮助开发者进行WiFi功能的调试和性能测试。
MTK环境搭建编译调试图解
MTK环境搭建编译调试图解MTK使用文档开发环境所需软件。
ADSv1.2。
以及补丁(4554.exe)ActivePerl-5.6.1.638-MSWin32-x86MTKSDK(如国虹,06BW0712MP_1_AHONG28_06B_V18_MMI)SourceInsight3.5调试工具以及下载程序工具Catcher_v3.6.02FlashTool_v2.9.1007_6228开发环境安装方法。
先安装ADS。
需要注意的地方。
请选择C盘如图:这时,请将原目录的ADS\ADS\crackads12下的CRACK复制到C:\programfile\arm下。
点击Browse,选择C:\programfile\arm\CRACK下的LICENES.DAT其它的按默认安装,安装完成后,请安装补丁。
4554.exeunzip然后安装ActivePerl-5.6.1.638-MSWin32-x86。
Installer.bat然后按回车。
如图最后,将MTKSDK(如国虹,06BW0712MP_1_AHONG28_06B_V18_MMI)复制到自己喜欢的目录,但这个目录不能有中文名字。
如我复制到:E:\jiang\MTK\guohong程序编译方法下面是开始编译了。
第一次时用new这个时间大概要40分钟左右,建议把杀毒软件关掉命令:makecustom=AHONG28_06BGPRSnew编译完成程序下载到手机方法把FlashT ool_v2.9.1007_6228复制到跟MTK相邻的目录。
如我放到:E:\jiang\MTK\guohong选择相应的串口,如我的是com17开始时,需要设置两个路迳:点击DwonloadAgent点击Scatter-loading选择build\AHONG28_06B\AHONG28_06B_PCB04_gprs_MT6228_S02.MAUI_06B_W07_ 12_MP_1_V18.bin\scatAHONG28_06B.txt将下载线连接好手机。
(505记 ) 3_编译MTK包(包含模块编译
第一部分:编译MTK包:----更新于2013/04/05 宝连整理前期准备:一:系统要求:Linux Ubuntu 10.04 64bitbao/t0目录下:1、.gz00~.gz06这个是压缩的分包,先解压成一个大的解压包进入,你所放的目录:在终端下运行命令:cat(一个空格)ALPS.ICS.MP.V2.2_HEXING75_ICS_INHOUSE.tar.gz00 (1个空格)ALPS.ICS.MP.V2.2_HEXING75_ICS_INHOUSE.tar.gz01 (1个空格)ALPS.ICS.MP.V2.2_HEXING75_ICS_INHOUSE.tar.gz02 (1个空格)ALPS.ICS.MP.V2.2_HEXING75_ICS_INHOUSE.tar.gz03 (1个空格)ALPS.ICS.MP.V2.2_HEXING75_ICS_INHOUSE.tar.gz04 (1个空格)ALPS.ICS.MP.V2.2_HEXING75_ICS_INHOUSE.tar.gz05 (1个空格)ALPS.ICS.MP.V2.2_HEXING75_ICS_INHOUSE.tar.gz06 (1个空格)>> ALPS.ICS.MP.V2.2_HEXING75_ICS_INHOUSE.tar.gz这样就多了一个压缩包ALPS.ICS.MP.V2.2_HEXING75_ICS_INHOUSE.tar.gz2、然后把上面得到的解压包解压命令tar –vzxf ALPS.ICS.MP.V2.2_HEXING75_ICS_INHOUSE.tar.gz得到一个alps文件夹3、再把ALPS.ICS.MP.V2.2_HEXING75_ICS_GPL.tar.gz合并上去(即直接解压ALPS.ICS.MP.V2.2_HEXING75_ICS_GPL.tar.gz这个压缩包所得的内容自动解压到alps文件夹中)命令:tar –vzxf ALPS.ICS.MP.V2.2_HEXING75_ICS_GPL.tar.gz此时整个alps文件夹有5.4G(一):编译android:在终端进入到bao/code/alps目录下输入命令:source mbldenv.sh 回车再输入 ./makeMtk generic new(二)、编译模拟器Emulator输入命令:./makeMtk banyan_addon n dr emulator(三)、编译SDK(大概半个多小时)输入命令:./mk banyan_addon编译SDK成功后在下面目录生成两个文件:(四)编译到此结束,以下是把模拟器运行到eclipse上:1、生成的SDK目录里即:alps/out/host/linux-x86/sdk_addon里解压mtk_sdk_api_addon-15.1.zip 在本目录得到mtk_sdk_api_addon-15.1文件夹2、把mtk_sdk_api_addon-15.1文件夹拷贝到你以前安装SDK的目录即android-sdk-linux 文件夹下的add-ons文件夹里3、再进入mtk_sdk_api_addon-15.1文件夹的emulator/linux里面拷贝以下三个文件返回到android-sdk-linux文件夹再进入tools文件夹把刚拷贝的三个文件放在此文件夹内(由于tool里面也有上面的三个模拟器,直接拷贝会把原来的覆盖掉,所以为了保险起见,最好先把原来的三个模拟器备份)4、打开eclipse创建一个新的emulator这样在Target的选项就多了MTK 4.0.3这个选项,我们选择它创建好模拟器接着就运行结果如下:注:(一)Building android出自文档build/v2.3/ALPS(Android 2.3) Build System Introduction.pdf(二)building Emulator (三)building SDK 出自文档Framework/MTK SDK User Guide.pdf(五)单模块编译(命令)1、source build/envsetup.sh2、./makeMtk generic mm packages/apps/Launcher23、./makeMtk generic systemimage。
MTK编译环境及常用工具介绍
MTK编译环境及常用工具介绍MTK(MediaTek)是一家全球知名的半导体公司,主要专注于移动通信领域的研发和生产。
在MTK编译环境中,常用的工具包括MTK自家开发的编译工具链、编译器、调试工具和常用的第三方工具等。
本文将介绍MTK编译环境及常用工具的基本情况。
1. 编译工具链(Toolchain):MTK自家开发的编译工具链是MTK编译环境的核心部分,它由一系列编译器、汇编器、链接器和其他辅助工具组成。
MTK的编译工具链根据不同的目标平台和处理器架构进行定制,常见的包括arm-linux-gcc、mips-linux-gcc等。
编译工具链提供了一套标准的工具接口,方便开发者编译和构建代码。
3. 调试工具(Debugging Tools):调试工具在软件开发过程中起到了至关重要的作用。
MTK编译环境中,常见的调试工具有gdb、ddd、Valgrind等。
gdb是一个强大的调试器,支持多种调试功能,包括断点调试、内存查看、变量跟踪等。
ddd是gdb的图形化界面,提供了更加直观和友好的调试环境。
Valgrind是一款内存分析工具,可以检测程序中的内存错误和泄漏问题。
4. 版本控制工具(Version Control Tools):版本控制是软件开发中必不可少的一部分,它能够跟踪记录代码的改动并进行管理。
MTK编译环境中,常见的版本控制工具有Git、SVN等。
Git是一款分布式版本控制工具,它具有高效、灵活、安全等特点,被广泛应用于开源项目和企业级开发中。
SVN是一款集中式版本控制工具,相对简单易用,适合小规模团队和个人开发者使用。
5. 性能分析工具(Performance Analysis Tools):性能分析是优化软件的关键步骤之一,MTK编译环境中常用的性能分析工具有oprofile、perf等。
oprofile是一个基于硬件性能计数器的性能分析工具,可以实时监测程序的运行情况,并提供详细的性能报告。
MTK软件编译步骤
请按以下操作说明进行:打开dos编辑窗口(开始->运行->cmd),找到工程代码所在根目录,如\opt\MTK6217 输入编译批处理命令:格式:make[custom="projectName"]"project" "action"["modules"]Example: make custom=mtk6217 gprs new给个MTK的make方法后面的modules是nucleus之类的,可以不用写,中间的除了mtk6217工程名外可以照写,mtk6217工程名可以在你的源代码的make目录下有个工程文件名,比如我的例子就叫mtk6217_gprs.mak,你将你的替换就可以了,另外,除了上面的仁兄跟你说的ADS1.2以上 perl也要 5.**,我用的是ActivePerl-5[1].6.1.631的,你查找下载一下再用ARMAR 打包成静态LIBMTK软件编译编译工具和辅助工具:ADS1.2ADS12_update_842.exeMSYS-1.0.10.exeMinGW-3.1.0-1.exeImageMagick-6.2.5-5-Q16-windows-dll.exe7z313.exe开始编译:切换到项目根目录,然后在命令行下面执行命令:make custom=proj gprs new其中,命令可以为 clean,update,remake目标文件:生成的目标文件为.bin文件,位于 MTK\\build\\proj 目录下面,build 目录为生成的一个目录。
Log文件:Log文件同.bin文件一样,也是位于 build 目录下,如果编译出错,可以在命令行中看到出错的模块,然后到build 目录下找对应的log 文件。
仿真环境:工程文件 PixtelMMI.dsw 位于目录 MTK\\plutommi\\mmi 下面,由此可进入仿真环境。
mtklog使用手册
mtklog使用手册在移动通信行业,MTK是一家著名的芯片制造商,其产品广泛应用于手机、平板和其他电子设备中。
MTK提供了一款名为mtklog的工具,用于记录设备的运行日志和调试信息,帮助开发人员解决问题和优化性能。
本手册将详细介绍mtklog的使用方法和相关注意事项。
1. mtklog简介mtklog是MTK提供的一个命令行工具,用于捕获设备的运行日志和调试信息。
它可以记录各种系统事件、应用程序日志、传感器数据等,以帮助开发人员分析设备的运行状态和性能瓶颈。
通过使用mtklog,开发人员可以实时监控设备,迅速定位和解决问题。
2. 安装mtklog要使用mtklog,首先需要将其安装到设备上。
在MTK芯片的设备上,通常已经预装了mtklog。
如果没有预装,可以通过MTK官方网站或开发者论坛下载并安装mtklog应用程序。
安装完成后,即可开始使用mtklog工具。
3. 启动mtklog在设备上启动mtklog非常简单。
打开设备的应用程序列表,找到mtklog应用程序并点击打开。
启动后,mtklog会自动开始记录设备的运行日志和调试信息。
4. 查看日志mtklog记录的日志文件位于设备的存储器中,可以通过设备的文件管理器或计算机上的文件浏览器访问。
进入mtklog文件夹,你将看到一系列以时间戳命名的文件。
这些文件包含了设备的日志信息。
5. 解析日志为了更好地理解设备的日志信息,可以使用mtklog工具提供的解析功能。
mtklog工具解析日志的方式是将日志文件中的原始文本转换为易于理解的格式。
在mtklog应用中,你可以找到相关的解析选项,并在其中选择要解析的日志文件。
解析完成后,你将获得包含所需信息的新日志文件。
6. 设置过滤器有时候日志文件会非常庞大,包含许多不相关的信息。
为了提高效率,mtklog提供了过滤器功能,可以根据关键字、时间戳或其他条件筛选日志信息。
通过设置过滤器,你可以只保留与你关注的问题相关的日志,以便更好地进行分析和排查。
MTK_环境搭建说明文档
MTK平台搭建说明书MTK平台搭建说明书 (1)1.1. 安装第三方工具 (1)1.2. 检查编译环境 (1)1.2.1. 编译命令 (2)1.2.2. 编译过程中的日志信息 (2)1.3 编译模拟器 (3)安装第三方工具首先要安装编译器ADS v1.2,安装目录为C:\Program Files\ARM,版本应该是842以上版,如果版本不够,需要将升级的软件包解压,拷贝到C:\Program Files\ARM\ADSv1_2的目录下,注意压缩的7z工具要安装442版本。
然后需要安装perl的编译器,推荐安装ActivePerl 5.6.1.版。
安装MinGWStudioFullSetup-2_05.exe 将生成的目录中的MinGW这个文件夹拷贝到项目文件夹下的tools文件夹下MinGW是指只用自由软件来生成纯粹的Win32可执行文件的编译环境,它是Minimalist GNU on Windows的略称。
在基本层,MinGW 是一组包含文件和端口库,其功能是允许控制台模式的程序使用微软的标准C运行时间库(MSVCRT.DLL),该库在所有的NT OS 上有效,在所有的Windows 95 发行版以上的Windows OS 有效,使用基本运行时间,你可以使用GCC 写控制台模式的符合美国标准化组织(ANSI)程序,可以使用微软提供的C 运行时间扩展。
MinGW 官方网站为实际上MinGW 并不是一个C/C++ 编译器,而是一套GNU 工具集合。
..安装msys,同时也需要将msys目录拷贝到项目文件夹下的tools文件夹下MSYS:Minimal GNU(POSIX)system on Windows,是一个小型的GNU环境,包括基本的bash,make等等。
是Windows下最优秀的GNU环境。
需要注意的是,在有的mtk06b的release版本可能在项目文件夹下的tools文件夹下已经包含了mingw 和 msys这两个文件夹,就不用再拷贝了.1.1. 检查编译环境编译环境搭建好以后,在Dos环境中的工程目录\tools\目录下运行chk_env命令检验编译环境是否搭建成功。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
进入第一级文件夹,双击 cmd.exe
输入:
make custom=IK158 gprs new
此IK158是工程名,是根据:make\IK158_GPRS.mak文件来获取的,取文件名_GPRS
之前的文字即可
2 RVCT的安装路径要根据你们系统上RVCT所在的具体目录修改一下make\option.mak
里,查找:tst,有一处有ldz的地方,就是我们改的地方,为99时,关闭此打印,
为4时,是USB打印。用CATCHER就可以打印出来
具体CATCHER使用时,先把手机开机,再插入USB线,再连接电脑,再打开CATCHER就可以
4、下载BIN文件
BIN文件所在路径为,编译后的build\IK158\IK158_PCB01_gprs_MT6261_S00.MAUI_11C_W13_52_MP_V2.bin
文件,在此文件里找一下:rvct,此代码里,rvct是在C:\arm下,注意没有PROGRA~1
如果是在C:\PROGRA~1\arm下,就要添加PROGRA~1,不能有空格
3、此代码已打开了usb 打印,即在custom\common\hal\nvram\nvram_data_items.c
在此文件夹里用FLASHTOOL,点SCATTER,选IK158_BB.cfg文件即可。
下载流程
先把FLASHTOOL打开,选烧写文件,再点DOWNLOAD,其次才把手机关机,插入USB线
此时,电脑会查找到USB转串口,没有驱动时,在此时要安装驱动,有驱动,则
FLASHTOOL会自动检测到端口,并下载软件,出现红色条