日韩中文在线观看-欧美性综合-伊人视频在线观看-亚洲免费在线视频观看-国产偷人视频-人妻丰满熟妇岳av无码区hd-国产一级淫片a视频免费观看-国产精品交换-国产精品1区2区3区4区-美女日批视频在线观看-欧美日韩一区二区三区自拍

【ARM】MDK-編譯時Linker Error:Internal fault

1、 文檔目標


記錄問題ARMCLANG: Linker Error: Internal fault: [0xb3b91b:6120001]的解決方案,以及添加原廠對于該問題的說明鏈接,為同事解決該問題提供參考。

2、 問題場景


客戶在編譯時linking中出現報錯信息.SPIN32G0601-JXPR-VSH SPIN32G0601-JXPR-VSHaxf: Internal fault: [0xb3b9b:6120001]


圖2-1


此問題在Arm Compiler version 6.11中引入。到目前為止,我們只在鏈接器分散文件包含. any選擇器和區段具有隨機大小時看到過它。當從目標對話框中選擇使用內存布局選項時,μVision創建包含. any選擇器的分散文件。


:在極少數情況下,使用 Arm 編譯器版本6.11或 Arm 編譯器版本 6.12生成應用程序時,會出現該報錯


3、軟硬件環境

1)、軟件版本:MDK 5.27 Arm 編譯器版本 6.12

2)、電腦環境:Windows 10

3)、外設硬件:無



4、解決方法

方法1)、更改編譯器優化級別。

首先點擊圖4-1-1標記1處快捷方式,進入 Options for Target 目標窗口- ,并選擇C/C++(AC6)。uVision中,可以根據如圖4-1-1的標記 3 選擇優化的級別。


當需要調試時,將優化級別從0(-0)更改為1(-01)(建議),反之亦然。對應用程序版本使用不同的優化級別(1或更高)。


圖4-1-1

方法2)、更改設置One ELF Section per Function


首先點擊圖4-2-1標記1處快捷方式,進入 Options for Target 目標窗口- ,并選擇C/C++(AC6)。uVision中,可以根據如圖4-2-1的標記 3 取消One ELF Section per Function的選擇,編譯后無報錯。

圖4-2-1

注意:如果不能使用Arm編譯器版本6.13,有不同的方法來解決這個問題。前兩種解決方法很簡單,并嘗試改變部分大小,但它們可能起作用,也可能不起作用。唯一安全的解決方法是不要在鏈接器分散文件中使用ANY選擇器。

方法3)、最安全的解決方法是將鏈接器分散文件中的.ANY選擇器替換為*(如果可能的話)。如果你使用的是自定義散射文件,你可以這樣修改它:


修改前

圖4-3-1

修改后

圖4-3-2

注:如果您在uVision的目標鏈接器對話框選項中選擇了目標對話框中的“ Use Memory Layout from Target Dialog ”選項,μVision將為您生成分散文件。在這種情況下,您需要禁用此選項并手動編輯已經創建的散射文件。

圖4-3-3

方法4)、將Arm Compiler version 更新至6.13及以上版本,該編譯器版本為Keil MDK 5.29版本的一部分,更加直接的方法更新軟件版本至Keil MDK 5.29及以上版本。



【更多軟件使用問題請站內搜索

官網參考鏈接:ARMCLANG: Linker Error: Internal fault: [0xb3b91b:6120001]

主站蜘蛛池模板: 霍林郭勒市| 铅山县| 凤城市| 桑日县| 平顶山市| 淮北市| 渑池县| 临夏市| 富平县| 沾益县| 安义县| 葫芦岛市| 郸城县| 桦甸市| 定日县| 宁波市| 南开区| 横峰县| 靖西县| 高阳县| 陕西省| 南和县| 沂南县| 中方县| 桂平市| 石狮市| 万荣县| 嘉义市| 茌平县| 齐齐哈尔市| 麻江县| 河东区| 志丹县| 象山县| 长宁区| 察雅县| 上思县| 郁南县| 喀喇沁旗| 巴塘县| 灌云县|