看板 C_and_CPP 關於我們 聯絡資訊
開發平台(Platform): ADI bf561 問題(Question): 我的全域變數全放在L3內,只要我程式呼叫函數到一定程度多時, 編譯就會出現錯誤...(下方說明),但只要我關閉一些function就又可正常work... 有測試過不是自己寫的function問題, 而是有時連多加一個printf時,編譯就出現如下錯誤訊息... 反正我就是不能太多function一切就又正常了... 我試著從下方錯誤訊息進入.ldf檔,但不知如何修改... 請問該如何解決此問題呢?(是否堆疊爆了?) 錯誤結果(Wrong Output): [error 1]: Out of memory in output section 'porgram_ram' in processor 'p0' Total of 0x1a0 word(s) were not mapped. For more details. see 'linker_log.xml' in the output directory. [error 2]: Out of memory in output section 'l1_code' in porcessor 'p0' Total of 0x1a0 word(s) were not mapped. For more details. see 'linker_log.xml' in the output directory. -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.251.209.96 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1441013672.A.360.html
bdvstg: 真的是561耶!!! 願主保佑你XDD 09/01 13:04
bdvstg: 建議先檢查一下有沒有不小心用到宣告大小以外的地方 09/01 13:05
bdvstg: 啊我搞錯了... 是編譯錯誤 09/01 13:07
bdvstg: debug資料夾下會有一個*.map.xml的檔案 可以看哪邊用多少 09/01 13:09
bdvstg: 選告變數前面加 section("xxxx")可以指定指變數放到哪 09/01 13:11
bdvstg: function印象中也可以 09/01 13:13
bdvstg: 那個xml檔直接用IE開 看哪邊還有空間就塞哪 09/01 13:14
bdvstg: 然後要注意code和data不要搞混了 09/01 13:14
bdvstg: ldf我自己建議是能不動就不要動XDD (我覺得調那個很煩XD) 09/01 13:15
peng0116: 樓上的意思是561很........................!? 09/01 13:51
peng0116: ok,感謝您 09/01 13:52
bdvstg: 561很不錯(我們也用它做過許多事) 只是真的很多要注意的 09/02 14:45
bdvstg: 很多時候會因為沒注意的小細節卡很久 09/02 14:46
bdvstg: 不知道是不是DSP都這樣 (我也只用過這顆DSP XD) 09/02 14:47