使用SlickEdit 編輯編譯IAR工程。

來源:互聯網
上載者:User

slickedit是一個功能算是很全面的編輯器,注意了, 他就是個編輯器,但是跟別的編輯器不同的是他有一個vsbuild.exe程式。

這個程式的最大的特點就是它能夠跟蹤cmd視窗的內容,從而實現錯誤定向。

舉個例子。假如我們採用一個布置好的MinGW環境去編譯一個makefile,我們是可以通過寫一個env.bat的指令碼在cmd中運行,將環境註冊到系統內容中,然後在cmd介面中進入工程目錄中,一個make指令就可以完成編譯。但是當出錯的時候就得一行一行的找了。這方便嗎?

但是假如我們建立一個slickedit的工程,把檔案都是拉進去,這時候開啟它的build介面,再重複上面的步驟,然後你點擊那個錯誤或者警告看看。。是不是自動跳轉了??我當初就是這麼用的。

這就是slickedit的一個特色。。

接下來就是IAR了,IAR是一個編譯效率很高的嵌入式編譯器,但是它的編輯功能也是很讓人詬病的。

於是我們經常性的會想用外部的編輯器去編輯檔案,然後再取iar裡面編譯。。當然IAR也能調用外部的編輯器, 但是效率以及錯誤定位功能一樣是沒有的, 你編好了還是要儲存,然後直接切換到IAR繼續編譯。於是我就想使用slickedit的那個vsbuild功能來實現IAR的編譯與編輯。。當然,也包括了自己跳轉功能。

首先,電腦可能是需要預先安裝IAR的編譯器的,然後還要在環境變數裡面給IAR的安裝路徑配置一個環境變數,我是設定成IAR_PATH,名字無所謂的,接著也要安裝SLICKEIDT,我的是最新版的16.0。

然後點擊project->new,在彈出來的那個工程類型框下面,有一個customize...按鈕,是用來建立一個新的工程類別的。我們就是要建立一個工程類別,然後把工具配置好。

在點擊customize後彈出的customize project types 裡面點擊New...,命名自己填,重要的是裡面的語言要選grenal c\c++,我這個版本是沒有整個但是有個other c\c++,所以我就選了這個。接著進入工具配置介面,點TOOLsx配置頁,裡面有幾個配置選項,別的不管,點擊build,這個是編譯工具,它的功能是你儲存的時候會自動編譯。所以裡要填的命令是一個相當於make的,而rebuild是全部再編譯,所以功能才相當於build.

接下來是開始組態工具, 一開始我只是想通過直接icc.exe和xlink。兩個程式完成編譯,但是發現者兩個命令是能這麼用的, 因為icc.exe跟xlink都是需要很多檔案名稱作為變數。。icc還好辦, 但是link是要吧所有檔案名稱作變數。這我完全實現不了。。於是只好做罷 , 但是最近在外國slickedit官方論壇發現slickeidt是可以編譯iAR的, 其中提到一個關鍵程式, IarBuild.exe..我才恍然大悟。這才去翻了IAR的使用手冊,終於挖出這個工具。

IarBuild.exe實際上是一個直接編譯IAR的ewp的工具。要使用這個命令的前提是已經建立好一個IAR 的ewp工程,並且把檔案都包含好了。

這個命令格式為iarbuild project.ewp [-clean|-build|-make] <configuration> [-log errors|warnings|info|all]

project.ewp 是工程名。

-clean是清除工程的編譯結果,-build是全部編譯,-make是編譯修改的部分。

而<configuration>是選定工程的配置,比如Debug,Release。我們建工程的時候一般都是用的Debug,所以這裡也就是Debug了。

最後的是一個顯示訊息的等級。分別是errors.warnings,info.all,errors是只顯示錯誤,warnnings是只顯示警告,info,是顯示最終資訊,all是顯示所有資訊。

很明顯, iar錯誤分了4個等級。而slick只有兩個錯誤等級,所以當我們吧下面一條指令

%(IAR_PATH)\IarBuild %rn.ewp -build Debug -log info   (%rn是指當前工程名)

當成編譯指令的時候就會發現,編譯的時候vsbuild提示不認識後面的-log info。。。

怎麼解決呢。。其實很簡單, 就是。。。。。。。。
不填。。

最後面的-log如果不加的話,就會預設成預設設定了。 而且也不會報錯。

於是根據以上的內容,我們就可以配置成3個工具,但是一般都是用make跟build而已啦。。

%(IAR_PATH)\IarBuild %rn.ewp -make Debug

%(IAR_PATH)\IarBuild %rn.ewp -build Debug

%(IAR_PATH)\IarBuild %rn.ewp -clean Debug

然後儲存, 再建立一個slick工程在IAR工程目錄中,把檔案都拉到slickeit裡面去,注意工程名是要一樣的。必須的,否則它怎麼知道你要編譯什麼工程。。還有一點。。。slick的工程不能存在中文路徑, 否則會一直提示檔案儲存。。。這個也是我碰到的一個頭疼問題。

具體配置我發個圖片上來。。

值得說的是,這個是一勞永逸的工作, 這次設定好類型後,下次是不需要重新設定的。只需要選定工程類型就好。。好了, 可以試試編譯了, 直接一個build,或者儲存檔案看看。。

最後, 需要提示的是,如果要有slick的變數尋找功能擴充到iar的庫。。。就需要把iar的路徑也包含到工程類型的設定的directories的include裡面去。。但是因為不同iar的包含標頭檔不同,最好是分別添加比較好。。。= =不要在工程類型裡添加, 畢竟這個是要通用的。。

-  -還有。。。很多知識來源網上,也不是很重要的知識。。。但是。。。絕對原創,轉帖請註明出處。。。。拒絕偷盜。。。。

http://blog.csdn.net/xuzhenglim/article/details/6938132

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.