編譯調(diào)試
發(fā)布時間:2012/4/3 0:48:57 訪問次數(shù):864
在MantisOS中應(yīng)用程序是與內(nèi)核一起ATMEGA16L-8MU 進行編譯的,必須對平臺進行定制才能將源代碼編譯成目標文件,步驟如下。
啟動Cygwin環(huán)境,進入到MantisOS主目錄下,找到一個autogen.sh的腳本文件,并執(zhí)行autogen.sh俞令,等待成功執(zhí)行完畢以后,再進入build目錄,根據(jù)現(xiàn)有的硬件節(jié)點類型,選擇各種節(jié)點硬件目錄,如選擇mica2,進入相應(yīng)目錄,找到configure文件, 執(zhí)行configure命令。在該命令的執(zhí)行過程中,首先檢查系統(tǒng)是否安裝好編譯器,然后生成系統(tǒng)各個部分的makefile文件。進入應(yīng)用程序所在目錄,執(zhí)行make命令就可以生成所需要的最終程序。
因為編譯時采用的是動態(tài)聯(lián)編,執(zhí)行make命令的過程中,會先檢查應(yīng)用程序所依賴的一些中間代碼文件,接著檢查應(yīng)用程序語法問題。因此,在Cygwin環(huán)境中,可以對源程序進行調(diào)試。
如果對UNIX編程有一定的基礎(chǔ),開發(fā)MantisOS應(yīng)用程序便簡單得多,但與UNIX不同的是,它是一種嵌入式操作系統(tǒng),針對不同的應(yīng)用,設(shè)計與編碼都有很大的區(qū)別,在此,提出以下幾點建議。
①對照應(yīng)用需求查看節(jié)點目前所具備的功能,進行有目的的選擇,如防火報警中涉及的報警設(shè)備。
②熟悉MantisOS與Cygwin之間的聯(lián)系,了解其編譯機制,這樣當系統(tǒng)需要添加新的功能時,便可以清楚整體系統(tǒng)的重新編譯。
③因為是在Cygwin環(huán)境下進行調(diào)試,缺少可視化的錯誤檢測,只能利用make命令進行動態(tài)聯(lián)編,而且與系統(tǒng)核心編譯出來的中間文件緊密相連,因此順序地進行操作有利于應(yīng)用開發(fā)的調(diào)試。
④利用多線程進行編程,優(yōu)點有很多.但并不是創(chuàng)建的線程越多越好,合理地創(chuàng)建線程,有效地對線程執(zhí)行睡眠操作有利于節(jié)省節(jié)點能量。
⑤由于節(jié)點存儲器空間十分有限,編程時盡量規(guī)范。另外,內(nèi)存的創(chuàng)建與釋放是相互對應(yīng)的,當內(nèi)存不用時立即釋放。
啟動Cygwin環(huán)境,進入到MantisOS主目錄下,找到一個autogen.sh的腳本文件,并執(zhí)行autogen.sh俞令,等待成功執(zhí)行完畢以后,再進入build目錄,根據(jù)現(xiàn)有的硬件節(jié)點類型,選擇各種節(jié)點硬件目錄,如選擇mica2,進入相應(yīng)目錄,找到configure文件, 執(zhí)行configure命令。在該命令的執(zhí)行過程中,首先檢查系統(tǒng)是否安裝好編譯器,然后生成系統(tǒng)各個部分的makefile文件。進入應(yīng)用程序所在目錄,執(zhí)行make命令就可以生成所需要的最終程序。
因為編譯時采用的是動態(tài)聯(lián)編,執(zhí)行make命令的過程中,會先檢查應(yīng)用程序所依賴的一些中間代碼文件,接著檢查應(yīng)用程序語法問題。因此,在Cygwin環(huán)境中,可以對源程序進行調(diào)試。
如果對UNIX編程有一定的基礎(chǔ),開發(fā)MantisOS應(yīng)用程序便簡單得多,但與UNIX不同的是,它是一種嵌入式操作系統(tǒng),針對不同的應(yīng)用,設(shè)計與編碼都有很大的區(qū)別,在此,提出以下幾點建議。
①對照應(yīng)用需求查看節(jié)點目前所具備的功能,進行有目的的選擇,如防火報警中涉及的報警設(shè)備。
②熟悉MantisOS與Cygwin之間的聯(lián)系,了解其編譯機制,這樣當系統(tǒng)需要添加新的功能時,便可以清楚整體系統(tǒng)的重新編譯。
③因為是在Cygwin環(huán)境下進行調(diào)試,缺少可視化的錯誤檢測,只能利用make命令進行動態(tài)聯(lián)編,而且與系統(tǒng)核心編譯出來的中間文件緊密相連,因此順序地進行操作有利于應(yīng)用開發(fā)的調(diào)試。
④利用多線程進行編程,優(yōu)點有很多.但并不是創(chuàng)建的線程越多越好,合理地創(chuàng)建線程,有效地對線程執(zhí)行睡眠操作有利于節(jié)省節(jié)點能量。
⑤由于節(jié)點存儲器空間十分有限,編程時盡量規(guī)范。另外,內(nèi)存的創(chuàng)建與釋放是相互對應(yīng)的,當內(nèi)存不用時立即釋放。
在MantisOS中應(yīng)用程序是與內(nèi)核一起ATMEGA16L-8MU 進行編譯的,必須對平臺進行定制才能將源代碼編譯成目標文件,步驟如下。
啟動Cygwin環(huán)境,進入到MantisOS主目錄下,找到一個autogen.sh的腳本文件,并執(zhí)行autogen.sh俞令,等待成功執(zhí)行完畢以后,再進入build目錄,根據(jù)現(xiàn)有的硬件節(jié)點類型,選擇各種節(jié)點硬件目錄,如選擇mica2,進入相應(yīng)目錄,找到configure文件, 執(zhí)行configure命令。在該命令的執(zhí)行過程中,首先檢查系統(tǒng)是否安裝好編譯器,然后生成系統(tǒng)各個部分的makefile文件。進入應(yīng)用程序所在目錄,執(zhí)行make命令就可以生成所需要的最終程序。
因為編譯時采用的是動態(tài)聯(lián)編,執(zhí)行make命令的過程中,會先檢查應(yīng)用程序所依賴的一些中間代碼文件,接著檢查應(yīng)用程序語法問題。因此,在Cygwin環(huán)境中,可以對源程序進行調(diào)試。
如果對UNIX編程有一定的基礎(chǔ),開發(fā)MantisOS應(yīng)用程序便簡單得多,但與UNIX不同的是,它是一種嵌入式操作系統(tǒng),針對不同的應(yīng)用,設(shè)計與編碼都有很大的區(qū)別,在此,提出以下幾點建議。
①對照應(yīng)用需求查看節(jié)點目前所具備的功能,進行有目的的選擇,如防火報警中涉及的報警設(shè)備。
②熟悉MantisOS與Cygwin之間的聯(lián)系,了解其編譯機制,這樣當系統(tǒng)需要添加新的功能時,便可以清楚整體系統(tǒng)的重新編譯。
③因為是在Cygwin環(huán)境下進行調(diào)試,缺少可視化的錯誤檢測,只能利用make命令進行動態(tài)聯(lián)編,而且與系統(tǒng)核心編譯出來的中間文件緊密相連,因此順序地進行操作有利于應(yīng)用開發(fā)的調(diào)試。
④利用多線程進行編程,優(yōu)點有很多.但并不是創(chuàng)建的線程越多越好,合理地創(chuàng)建線程,有效地對線程執(zhí)行睡眠操作有利于節(jié)省節(jié)點能量。
⑤由于節(jié)點存儲器空間十分有限,編程時盡量規(guī)范。另外,內(nèi)存的創(chuàng)建與釋放是相互對應(yīng)的,當內(nèi)存不用時立即釋放。
啟動Cygwin環(huán)境,進入到MantisOS主目錄下,找到一個autogen.sh的腳本文件,并執(zhí)行autogen.sh俞令,等待成功執(zhí)行完畢以后,再進入build目錄,根據(jù)現(xiàn)有的硬件節(jié)點類型,選擇各種節(jié)點硬件目錄,如選擇mica2,進入相應(yīng)目錄,找到configure文件, 執(zhí)行configure命令。在該命令的執(zhí)行過程中,首先檢查系統(tǒng)是否安裝好編譯器,然后生成系統(tǒng)各個部分的makefile文件。進入應(yīng)用程序所在目錄,執(zhí)行make命令就可以生成所需要的最終程序。
因為編譯時采用的是動態(tài)聯(lián)編,執(zhí)行make命令的過程中,會先檢查應(yīng)用程序所依賴的一些中間代碼文件,接著檢查應(yīng)用程序語法問題。因此,在Cygwin環(huán)境中,可以對源程序進行調(diào)試。
如果對UNIX編程有一定的基礎(chǔ),開發(fā)MantisOS應(yīng)用程序便簡單得多,但與UNIX不同的是,它是一種嵌入式操作系統(tǒng),針對不同的應(yīng)用,設(shè)計與編碼都有很大的區(qū)別,在此,提出以下幾點建議。
①對照應(yīng)用需求查看節(jié)點目前所具備的功能,進行有目的的選擇,如防火報警中涉及的報警設(shè)備。
②熟悉MantisOS與Cygwin之間的聯(lián)系,了解其編譯機制,這樣當系統(tǒng)需要添加新的功能時,便可以清楚整體系統(tǒng)的重新編譯。
③因為是在Cygwin環(huán)境下進行調(diào)試,缺少可視化的錯誤檢測,只能利用make命令進行動態(tài)聯(lián)編,而且與系統(tǒng)核心編譯出來的中間文件緊密相連,因此順序地進行操作有利于應(yīng)用開發(fā)的調(diào)試。
④利用多線程進行編程,優(yōu)點有很多.但并不是創(chuàng)建的線程越多越好,合理地創(chuàng)建線程,有效地對線程執(zhí)行睡眠操作有利于節(jié)省節(jié)點能量。
⑤由于節(jié)點存儲器空間十分有限,編程時盡量規(guī)范。另外,內(nèi)存的創(chuàng)建與釋放是相互對應(yīng)的,當內(nèi)存不用時立即釋放。
熱門點擊
- 750MHz差分ADC驅(qū)動器
- 物理層幀結(jié)構(gòu)
- 品質(zhì)因數(shù)Q
- 脈沖信號觸發(fā)電路
- DMTS協(xié)議
- 固態(tài)繼電器的分類
- 高精度可編程電流源電路
- 無線傳感器網(wǎng)絡(luò)的發(fā)展現(xiàn)狀
- 電位器的規(guī)格標志方法
- 無線傳感器網(wǎng)絡(luò)測距技術(shù)
推薦技術(shù)資料
- 硬盤式MP3播放器終級改
- 一次偶然的機會我結(jié)識了NE0 2511,那是一個遠方的... [詳細]
- CV/CC InnoSwitch3-AQ 開
- URF1DxxM-60WR3系
- 1-6W URA24xxN-x
- 閉環(huán)磁通門信號調(diào)節(jié)芯片NSDRV401
- SK-RiSC-SOM-H27X-V1.1應(yīng)
- RISC技術(shù)8位微控制器參數(shù)設(shè)
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究