2015-04-05 235 views
3

我想將IAR Embedded Workbench工作區分成幾個項目。目前,我們在與主應用程序相同的項目中安裝了操作系統和其他代碼,但我希望操作系統和其他外部代碼是我的應用程序依賴的靜態庫。在IAR Embedded Workbench中使用靜態庫時的編譯依賴關係

我知道如何創建一個靜態庫項目,以及如何添加是作爲我的可執行文件的依賴項,但我的問題是與編譯過程。似乎IAR並不知道它必須在可執行文件之前編譯庫。當庫不存在時,我得到一個錯誤,說文件丟失了,但是當庫之前編譯過一次,但裏面的一些文件改變時更糟糕。然後可執行文件編譯時沒有任何錯誤,但它使用舊庫!

是否有可能使IAR自行構建靜態庫時發生更改?當我有幾個靜態庫和更多的依賴關係時怎麼樣?

我有一個想法,使用預生成事件,但我想知道是否有任何開箱即用的情況下,如果不是什麼是最好的解決方案。

我們目前使用的是IAR 6,但可能很快會移動到7。

回答

4

我與IAR支持交談。這是結論: - 預先構建的事件是一個有效的解決方案 - 批量構建允許您定義一個項目的有序列表,這些項目都需要按照特定順序一起構建 - 對於命令行編譯 - 不支持對於批量生成(在工作空間級定義) - 只需簡單地按需要編譯的順序分別編譯所有項目。

就我個人而言,我喜歡批量生成選項比預先生成事件更好,因爲它允許普通建築(即不建立未更改的內容)和清理重建(從頭開始)。這是一個恥辱,雖然沒有支持使用命令行進行批量構建,因爲這使得我們在兩個不同的地方定義了兩次項目和它們的排序......

+1

這就是這樣的事情,讓我覺得IAR是浪費錢。這是幾乎所有其他地方都存在的基本功能,在免費產品中是不可接受的,更不用說成本與Workbench相當, – 2017-02-27 14:50:08