1.不要频繁去make r等操作,大多数情况下在vc下编译即可,只要资源编译完,就会进入并行编译,改动了 资源就一定要去重新编译资源,命令make resgen,完恶劣就可以直接去vc并行编译一下,多数情况下 不需要在vc下并行编译,只要普通编译几个,除了使用了make命令后。 2.new 完后一定要 重新生成 modis ,命令如下: make gen_modis make codegen_modis 分别耗时一分钟 make remake 10mins make new 50mins make resgen 5mins 其实应该看具体更改程度,以上数据指的是一般情况。 如果修改了源文件,也可以只点击编译即可,这时侯,可能会出问题,当你修改的东西需要的函数在它本 来应该编译的文件中没有得到编译,会提示这些函数名为没有定义的标识符;这时需要将这几个obj文件 重新编译,方法是将modis/mmi_app/***.obj删除,再编译一遍,这时vc就会再去编译一遍这些obj文件, 当然这样做有时还是会出问题,原因是你没有完全重新编译相关的obj文件,办法是,将mmi_app下的所 有的obj文件全部删除,然后再重新编译一遍,这时记得一定要选择并行编译,不然要很久。 5.如果使用make resgen编译资源时不彻底,可是使用make new来编译资源,等到模块编译阶段, 就终止它,就可以做到资源的彻底编译了。 错误处理办法: 1.已经使用的extern 引用该函数 error LNK2001: unresolved external symbol _mmi_fmgr_theme_activate_hdlr 1.估计是这个源文件没有纳入编译 yes 1.可以选中该模块,然后使用并行编译 2.可以改变源文件,然后编译 3.还可以去删除。obj文件,然后编译 6.设置断点 当是使用软按键触发事件时,在wgui_softkeys.c中的 execute_softkey_function 函数的 softkey_functions[key][k] (); 行添加断点; 7.某些复杂的全局变量或者指针无法再单步编译中查看值 方法: vc->project->setting(alt+f7)->modis->link 1.category == debug 2.取消separate types 3.选中both format 4.如果有连接错误,那么去掉D:\mtk\E570_0625_1644\MoDIS\MoDIS\Debug\vc60.pdb"这个文件, 再重新连接一遍,就OK了 8.当修改了某个.h文件(如ThemeComponents.h),但是没有修改对应的源文件(包含了这个头文件的 源文件),那么通常情况下是不会编译这个头文件的,方法是修改一下对应的源文件(如ThemeRes.c) 9.调试时,可以直接在valuable 窗口直接修改变量的值,然后运行看结果,而不需要去真正修改源代码; |
最近攒的一点关于mtk的编译小经验
最新推荐文章于 2024-04-28 14:15:40 发布
2010-08-29 22:07