国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

[brew]brew app 開發常見問題匯總 -- 持續更新

2019-11-09 16:21:27
字體:
來源:轉載
供稿:網友
q1.在make brew 應用的時候提示

Error: L6265E: Non-RWPI Section libspace.o(.bss) cannot be assigned to PI Exec r

egion ER_ZI.

Error: L6248E: libspace.o(.text) in PI region 'ER_RO' cannot have address type r

elocation to __libspace_start in PI region 'ER_ZI'.

Finished: 0 information, 0 warning and 2 error messages.

NMAKE : fatal error U1077: 'C:/ARM/ADSv1_2/bin/armlink' : return code '0x1'

Stop.

a1:在網絡上搜索到的回答一般是:檢查所有的C++類,是否都重載了new,delete運算符,在模擬器上不會出錯,但ARM編譯會報如上錯誤。檢查是否有double類型的算術或比較運算,目前BREW是不支持浮點運算的,所有運算必須使用有關助手函數,比如FMUL,FDIV等。但我這里實際遇到的情況是,我給app的主結構體分配了一個指針,然后在函數中對這個指針進行malloc,導致了上面的提示,將該指針換成非指針類型,則該錯誤提示消失。

--今天又進一步debug,發現在代碼里,malloc,free,atoi,這幾個函數要用大寫的命名才行,不然也會出現上面的錯誤,也就是要用MALLOC,FREE,ATOI,置換了函數后,便暫時沒出現那些問題了

q2.在make brew 應用的時候提示

Error: L6265E: Non-RWPI Section CCommon.o(.bss) cannot be assigned to PI Exec region ER_ZI.

a2:這主要是由于在app中使用了全局變量導致的提示,將app中的全局變量移除后,錯誤提示消失,但是這是一種很不方便的處理方式,網絡上有一種處理方式,似乎可以不用移除變量也可以編譯通過,但我還未進行過試驗,這里先做一個紀錄。

解決方案:

1、下載elf2mod.exe (本人的資源里有免費下載,http://d.download.csdn.net/down/2244832/miyunhong)

2、將elf2mod 安裝到了 /ARM/ADSv1_2 目錄下,本人的安裝目錄是 C:/ARM/ADSv1_2

3、一般需要將mak文件做 以下內容修改:(1).將 HEXTOOL = $(ARMBIN)/fromelf # ARM ADS utility to create hex file from image      替換成:HEXTOOL = $(ARMBIN)/elf2mod # ARM ADS utility to create hex file from image     (2).將 CPU = -cpu ARM7TDMI         # ARM7TDMI target PRocessor      替換成:CPU = -cpu ARM926EJ-S   # ARM9TDMI target processor  

(3).將 LFLAGS = $(ROPILINK) -rwpi -entry 0x8000#      替換成:LFLAGS = -split -reloc -entry AEEMod_Load

q3.


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 云霄县| 团风县| 朝阳区| 河源市| 马山县| 莱芜市| 辽宁省| 阿坝| 新密市| 邵阳县| 金湖县| 盐城市| 巢湖市| 庐江县| 平阴县| 乐业县| 武夷山市| 福贡县| 仙桃市| 潞西市| 永泰县| 万山特区| 来宾市| 哈巴河县| 抚州市| 普兰县| 界首市| 山东省| 厦门市| 上蔡县| 双流县| 斗六市| 旅游| 孝感市| 休宁县| 麟游县| 娄烦县| 德州市| 永州市| 江津市| 镇雄县|