成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

MTK開發之軟件編譯學習教程

移動開發
MTK開發之軟件編譯學習教程是本文要介紹的內容,主要是來了解MTK開發中如何來實現軟件的編譯,具體內容來看本文詳解。

MTK開發之軟件編譯學習教程是本文要介紹的內容,主要是來了解MTK開發中如何來實現軟件的編譯,具體內容來看本文詳解。

打開dos編輯窗口(開始->運行->cmd),找到工程代碼所在根目錄,如/opt/MTK6217 輸入編譯批處理命令:

格式:

  1. make[custom="projectName"]"project" "action"["modules"]  
  2. 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 打包成靜態 LIB

MTK軟件編譯

編譯工具和輔助工具:

  1. ADS1.2  
  2. ADS12_update_842.exe  
  3. MSYS-1.0.10.exe  
  4. MinGW-3.1.0-1.exe  
  5. ImageMagick-6.2.5-5-Q16-windows-dll.exe  
  6. 7z313.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 下面,由此可進入仿真環境。

燒寫程序:

工具  Flash_tool.exe 可燒寫程序。

該工具的主要設置是 COM口 和目標文件位置。

Download argent 和 scatter file 用自帶的就可以了,選中這兩項后,會出現ROM的選擇項,點擊后可選擇.bin文件。

設置好上面的參數后,連接上手機,將手機斷電,然后按開機鍵就可以燒寫程序了。

Trace 工具

在手機上往往要做一些trace,這就要用到trace工具---Catcher.exe。

手機上打 trace 接口為kal_prompt_trace,如同agere平臺的GSMprinf.

使用 Catcher.exe,

要先要設置 DataBase,這個文件是在編譯的時候生成的,是個沒有擴展名的二進制文件,該文件位于 //MTK//tst//database_classb,例如, BPLGU..。

在 Catcher.exe 中,設置 DataBase 的方式是 configà set database path

其次, 要設置模式為logging,這樣才能進行下面的設置。

該設置位于  controlà modeà logging

第三,要設置好COM口。

第四, 打開連接開關,表示 Catcher.exe處于待命狀態。

第五, 設置filter。這個可以過濾一些自己不需要的log。有時半天不出現log, 這時候重新選擇一下filter一般就會解決問題。

Filter設置路徑為  controlà set filter

Catcher.exe 使用的連接線給燒寫程序用的線是同一條。

保存log:

在log區域選中想要保存的log  (可用shift+ 鼠標),鼠標右鍵選save as…

有時為了方便測試,會設置trace默認關閉, 需要的時候可以打開。

該設置在工程模式下。

設備à set UARTàTST Config, 設置合適的UART 口。比如,UART1是可以trace的。

編譯出錯:

有時編譯會出現莫名其妙的錯誤,比如一剛剛可以編譯通過,現在卻不行,.

以上為項目開發的基本環境和基本過程

接下來的內容,則是具體的開發細節

添加文件:

開發過程中,少不了加減文件, 刪除文件實際上是添加文件的相反過程,因此略過。

MTK設置了很多lst 和 pth 文件供用戶添加文件,這些都在make文件夾下。用戶可以自己添加模塊,也可利用原有的lst 和 pth 文件添加。以下以添加在 MTK//make//plutommi 為例。

添加頭文件路徑:

  1. plutommi.inc 

添加本模塊路徑:

  1. plutommi.pth 

添加源文件路徑:

pl

  1. utommi.lis 

添加完畢,這些文件就可參與編譯了。

添加開關:

開關真是個好東西。依靠它,可以將沒有價值的功能瞬間屏蔽,又可以將我們需要但又擱置的功能瞬間啟用。能者上,不能者下,多么類似于社會法則。

添加開關 在make文件夾下面的 .mak文件里面。

注意事項:

有人喜歡模仿MTK原做法,在 .mak文件里面使用一個開關管住另外一個開關。那么兩個開關不要同名,否則開關起不了關閉的作用。

添加string資源:

1、GlobalDefs.h 中增加ID

2、population.c 中將ID和 string關聯

3、plutommi//Customer//CustResource//PLUTO_MMI//ref_list.txt 中增加ID 和各種語言的文本有了以上3個步驟,即可使用該文本資源了。

編譯后,在 plutommi//Customer//CustResource下面 會生成新的CustStrMap.c 和CustStrRes.c這兩個文件中就包含了新增的string資源

  1. <!--[if !supportLineBreakNewLine]--> 
  2. <!--[endif]--> 

添加圖片:

1、GlobalDefs.h 中增加ID

2、population.c 中將ID和 string關聯

3、增加圖片到解壓后的包里,增加完畢,應打包。plutommi//Customer//Images//PLUTO176X220里面的文件夾是生成的,可以在cc上看到為private。

4、添加進去后,要打包,如果僅添加在文件夾里面會被清除。如果沒有找到圖片文件,手機顯示的時候是一個紅色的*添加圖片時,注意路徑用4杠

在NVRam中增加成員:

需要增加ID,指出每塊大小,以及總的塊數 和缺省值。

每塊大小最好為偶數。

修改下面的文件:

  1. Nvram_user_defs.h:  ID, 大小,個數  
  2. NVRAMEnum.h  
  3. Nvram_user_config.c  
  4. custom_nvram_editor_data_item.h 

是在Dos環境下編譯,可以做成一個批處理文件,更方便。

MTK編譯分資源的編譯和代碼的編譯:

1、資源的編譯:

(1)需要編譯資源的情況:

在如下的修改情況下,需要重編譯資源:

a、修改了..plutommi//Customer//CustResource//PLUTO_MMI//目錄下的文件如字庫文件

(FontRes.c、L_**.h文件)、MMI配置文件(MMI_featuresPLUTO.h)、字符串資源文件

(Ref_list.txt)等;

b、修改了..plutommi//Customer//CustResource//PLUTO_MMI//Res_MMI目錄下的文件,這個目錄下的文件都是Res_*.*文件,是各個AP或模塊的資源配置文件,包含菜單、圖片、字符串資源的配置;

注意: Cust*.*文件是資源編譯生成的,不能手動修改。

(2)編譯方法:

進入..//plutommi//Customer目錄,執行remakeResource.bat批處理文件。

編譯成功會生成一些Cust*.*文件在//plutommi//Customer//CustResource目錄下,編譯代碼時再編譯這些文件;

編譯失敗到build目錄下查看log文件à res_gen.txt,可看到出錯信息。

(3)當我們改變了資源,想在PC模擬上看到修改效果時,也需要先執行如上的資源編譯命令,再在VC環境下build一下資源,就可以看到效果了。

2、代碼的編譯:

有如下的編譯命令:

  1. make custom=xxx gprs new  
  2. make custom=xxx gprs update  
  3. make custom=xxx gprs remake  
  4. make custom=xxx gprs clean 

這些編譯命令可以做成批處理文件build.bat,我們輸入相應的選項就可。

編譯成功后,在build目錄下生成所有的.obj,編譯信息log文件、下載.bin文件等;

編譯失敗時,到build目錄下查看相應的log文件,可看到出錯信息。

幾個關鍵字解釋如下:

(1)xxx,Project名,對應make目錄下的xxx_GPRS.mak文件;

(2)最后一個關鍵字:

a、new:

不管資源、代碼是否有改變,全部重編;

b、update:

掃描資源、代碼的改變,有改變的重編,無改變的不編;

c、remake:

不掃描資源,只掃描代碼的改變,有改變的重編,資源和無改變的代碼不編;

d、clean:

清除build目錄下的所有內容,保留目錄結構。

小結:MTK開發之軟件編譯學習教程的內容介紹完了,希望通過本文的學習能對你有所幫助!

責任編輯:zhaolei 來源: 網絡轉載
相關推薦

2011-08-30 16:02:10

MTK開發環境

2011-08-31 10:20:26

MTK驅動開發

2011-09-13 15:26:25

MTK環境搭建

2011-08-30 18:01:20

2011-08-30 16:43:46

MTK開發菜單

2011-09-06 13:31:10

MTK平臺Scatter文件

2011-08-31 10:01:44

MTK開發環境

2011-08-31 10:37:06

MTK開發入門

2011-08-30 16:32:41

MTK開發環境

2011-08-31 10:51:39

MTKAndroid 開發

2011-09-05 17:07:45

MTK手機軟件

2011-09-06 09:14:27

MTK平臺軟件

2011-08-31 10:12:26

MTK手機平臺

2022-07-11 10:45:37

插樁性能優化打包

2011-09-06 10:10:12

MTK系統Android系統

2011-08-30 16:22:00

MTK開發環境

2011-08-31 10:26:38

MTK驅動開發

2011-09-06 13:58:28

MTK系統

2011-08-01 18:27:58

iPhone開發 UISearchBa

2011-09-07 13:00:36

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产在线视频一区 | 日日草夜夜草 | 久久尤物免费一区二区三区 | 亚洲视频一区二区三区 | 国产欧美在线一区二区 | 欧美福利专区 | 久久久久久久电影 | 亚洲国产精品久久久久 | 欧美精品乱码久久久久久按摩 | 成人精品在线观看 | 91精品国产一区二区三区香蕉 | 日韩第1页| 精品一二三区视频 | 性欧美精品一区二区三区在线播放 | 欧美中文字幕一区二区三区亚洲 | 伊人久久在线观看 | 欧美日韩成人一区二区 | 亚洲精品aⅴ | 91九色在线观看 | 国产精品99 | 国产精品视频久久 | 久久99精品久久久久久 | 国产精品国产三级国产a | 在线资源视频 | 久久国产精品99久久久久久丝袜 | 欧美成人精品在线观看 | 成人在线中文字幕 | 中文字幕一区二区三区精彩视频 | 亚洲日本乱码在线观看 | 91精品在线播放 | 国产xxx在线观看 | 成人无遮挡毛片免费看 | 国产欧美在线观看 | 色综合久久久 | 毛片视频网站 | 日韩久久久久久 | 欧美一级片免费看 | 精品欧美一区二区三区免费观看 | 国产羞羞视频在线观看 | 在线观看三级av | 日本又色又爽又黄的大片 |