今天下班前有位同事丟求救訊息給我,說他在build load時遇到一個很奇怪的錯誤訊息,請我幫忙看看是怎麼回事。
我根據ARM Compiler吐的Error code查了一下document:
乍看之下跟compiler生成debug訊息有關,所以我請他先將debug compile option關掉再試試,就這樣先打發掉。過了不久就收到回報,看起來debug option關掉還是會有這個Error,於是只好請他把Source code拿來給我看看。
在出問題的c code file裡看了老半天,做了幾個實驗,也找不出什麼問題,請學長來瞧瞧也看不出個所以然。後來我想說也許跟header include tree有關吧,如果是類似out of memory的問題,可能有什麼recursive include之類的。
正在追查header檔發現,靠腰,怎麼有個header檔大小是12xMByte,我還真的揉了揉眼睛,以為自己太累看錯了。進去一瞧才發現裡面定了一個超大的array,他想把某個binary file直接轉成C array,放到C code裡編進去。雖然....的確是有這種用法,不過這個array size已經突破天際啦,Compiler妹妹都被搞壞了。
寫這篇主要是想表達....其實我們公司的天才,也是滿多的...
沒有留言:
張貼留言