Chinaunix首页 | 论坛 | 博客
  • 博客访问: 385756
  • 博文数量: 110
  • 博客积分: 2990
  • 博客等级: 少校
  • 技术积分: 1295
  • 用 户 组: 普通用户
  • 注册时间: 2009-01-05 08:42
文章分类

全部博文(110)

文章存档

2013年(1)

2012年(8)

2011年(22)

2010年(14)

2009年(65)

我的朋友

分类:

2009-11-11 19:32:17

 

最近公司的项目差不多都做完了,趁新项目还没来的时候学学东西。从朋友那里搞来一套mtk的源代码学学mtk的开发。选择mtk是因为,它跟我的工作所用的平台相似,学起来方便一点,另外一点是它可以在PC上跑,不用自己去买硬件,成本不高。呵呵,从朋友那里搞来的源代码,不用硬件,成本就只有时间了。

我的那个朋友还真绝,丢给我一个源代码就什么都不管了。我问他一些问题一律不答,还美其名曰:“你不是学习么,自己去找答案呀,什么都我告诉你,你还学什么呀?!!”气得我,不过也是,学东西还得自己动手!

搞开发当然是要先建开发环境了。在网上找了一些资料,整理一下,也算搞定了。首先当然是找到要用的软件了。

一.安装编译工具

1.           ADS1.2ADS1.2_update_848.exemtkarm7核的,所以用ads编译当然会比较好一点,当然应该是可以用其他编译器的,但不想去试,太麻烦了。到网上下了这两个软件,装上。注意:最好是按默认目录安装。不然后面还得有事做,按默认目录装可以省事不少!

2.            安装perlmtk编译脚本是用perl来完成的。

3.            到了这里,很多时候应该是可以了。因为很多release版本的源代码已经有其它第三方工具了。你先检查一下有没有下面的工具,如果没有就装。MSYS 版本:1.0.10MinGW 版本:3.1.0Gcc-core-3.3.1Gcc-g++-3.3.1ImageMagick 版本:6.3.6 Q167-zip 版本:3.13注意:版本最好是要求的版本,这些是已经通过测试的不会有问题。

4.           朋友可能是想考验我,把一个工具删除了,害我一开始编译不了。这个工具是convert.exe提示找不到这个文件。后来装了,ImageMagick后,把convert.exe放在\plutommi\Customer\ResGenerator里面就行了。

 

二.测试开发环境

1.  进入DOS命令提示行里

2.  进入你源代码目录下的tools目录

3.  运行chk_ev.exe,如果你看到“Build environment is ready!”的提示说明你的编译环境好了

 

三.开始编译

     1.在编译手机程序,在源代码的根目录里输入make –h可以看到编译帮助下面是我这里的提示:

Usage:

  make ["customer"|"mt62xx"] "project" "action" ["modules"]

 

Description:

  customer   = mtk             (Default customer)

             = firefly17_demo  (FIREFLY17_DEMO project)

             = [mt6217|mt6219|mt6226|mt6227|mt6228|mt6229] (EVB only)

             = ...

 

  project    = l1s             (Layer 1 stand-alone)

             = gsm             (GSM only)

             = gprs            (GPRS only)

             = basic           (Basic Framework)

 

  action     = new             (codegen, resgen, clean, update) (default)

             = update or u     (scan, compile, link)

             = remake or r     (compile, link)

             = clean or c      (clean)

             = resgen          (resgen)

             = c,u             (clean then update)

             = c,r             (clean then remake)

             = codegen         (codegen)

             = viewlog         (open edit to view build log)

 

  module(s)  = modules' name   (kal, l1, ...)

   => OPTIONAL when action is one of (clean c remake r update u c,r c,u)

 

Example:

  make gsm new                         (MT6205B EVB new)

  make gprs codegen                    (MT6218B EVB codegen)

  make mt6219 gprs update              (MT6219 EVB update)

  make firefly17_demo gprs new

  make milan_demo gprs c,u init custom

  make mt6219 gprs r init custom drv

也就是说只要输入make XXX gprs new之类的命令就可以编译了,这里XXXX指你的项目名。

   2.模拟器的编译。

     模拟器的编译是用VC来编译的,编译好后会生成一个exe的文件,你可以直接运行它来模拟手机的运行了。用VC6打开,\plutommi\mmi目录下的pixtelmmi.dsw然后编译。注意:两个项目都要编译

 

四.运行

我没有硬件运行它,所以只在pc上模拟运行,下面是运行的结果图:

阅读(764) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2009-12-16 08:33:55

好东西啊,没有人顶 现在那个 Gcc-core-3.3.1,Gcc-g++-3.3.1 都已经找不到了.学习中ing