當前位置:首頁 » 編程軟體 » ads12編譯

ads12編譯

發布時間: 2023-01-03 20:00:42

A. 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的編譯器和鏈接器。

B. ADS編譯後啟動的AXD中什麼都沒有,怎麼辦

打開AXD,在options下單擊configure targe ,會跳出choose targe 界面
選擇ARMUL(軟體模擬),就可以了。ADP 是硬體模擬。

C. 為什麼用ADS1.2編譯匯編和C語言混合編程時,編譯通不過啊,顯示:Error:L6218E:Undefined symbol main (

ADS1.2中一般用Main()主函數,你的錯誤是沒有定義的main()函數。。。

D. 在ads1.2 下的編譯問題 函數參數指針的問題嗎

我試過好幾個平台都是可以的。ADS我沒有裝,不知道情況。
從Error說明來看,是說FILE_Open函數的第一個參數類型不對。
你試試前面加強制轉換,看看對不對。
fdr= FILE_Open( (INT08U *) FILENAME_R, RDONLY);

E. ADS1.2編譯生成的bin與arm-linux-gcc編譯生成的bin文件有什麼不一樣

arm直接執行
arm上的linux系統上執行。

F. ADS中如何強行重新編譯工程的所有文件

把 「工程名_Data」 文件夾刪除,然後再次編譯就可以了。

也可以點擊 Project 菜單,選擇 Remove Object Code。然後再次 Make。

G. Win7下ADS.12總是崩潰,基於ARM920T的ADS1.2工程如何添加到Keil 4中進行編譯

ADS的工程和KEIL的工程文件都不一樣,是沒法添加進去的。只能是在KEIL中新建個項目,把源文件添加到KEIL的項目中,注意,KEIL和ADS的編譯器對某些代碼的判斷是不一樣的,可能KEIL編譯出來的程序和ADS編譯出來的程序執行時會有不同的邏輯,這個要注意。
電腦上最好有個XP系統,哪怕是虛擬機也好,不然碰到軟體不兼容,真的就抓瞎了。

H. ADS環境下編譯出現如下錯誤,應如何解決L6200E:symbol string mutiply define (by main.o and uart.o)。。

在main.c和uart.c源程序里有兩個函數名相同,我昨天剛遇到這問題,估計你的也是延時函數delay在main和uart中都有吧,去掉一個就可以瞭望採納哦

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:593
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:888
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:581
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:765
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:684
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:1012
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:255
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:114
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:806
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:712