参考

MDK-ARM Linker

Scatter File的用法(转载)

keil报错

Rebuild target 'Target 1'
assembling test1.s...
linking...
.\Objects\pro.axf: Error: L6630E: Invalid token start expected number or ( but found n at position 5 on line 5
.\Objects\pro.axf: Error: L6629E: Unmatched parentheses expecting ) but found n at position 5 on line 5
.\Objects\pro.axf: Error: L6226E: Missing base address for region LR_.
.\Objects\pro.sct(5): error: L6292E: Ignoring unknown attribute 'null' specified for region LR_.
.\Objects\pro.sct(5): error: L6228E: Expected '{', found ')...'.
.\Objects\pro.sct: Error: L6372E: Image needs at least one load region.
Not enough information to list image symbols.
Not enough information to list the image map.
Finished: 2 information, 0 warning and 6 error messages.
".\Objects\pro.axf" - 6 Error(s), 0 Warning(s).
Target not created.
Build Time Elapsed: 00:00:00

解决

在options 的Linker选项卡中不要选择Use Memory Layout from Target Dialog

并且把下边自动生成的Scatter file文本框清空。

原因

scatter文件提供内存映象中各个区​​域的分组和放置详细信息。The Memory Areas settings in Target can be used to create a linker scatter file. This requires enabling Use Memory Layout from Target Dialog in the dialog Options for Target - Linker. 勾选了Use Memory Layout from Target Dialog时使用的是The Memory Areas settings in Target Dialog自动生成的scatter文件,不勾选时使用的是scatter file框里的scatter file,你可以对它进行自定义编辑,它的内容一般来说是由取消勾选前由The Memory Areas settings in Target Dialog自动生成的。当你情空scatter框后会在链接命令后指明ro、rw的基地址

--cpu ARM920T *.o
--ro-base 0x00000000 --entry 0x00000000 --rw-base 0x40000000 --strict --summary_stderr --info summarysizes --map --xref --callgraph --symbols
--info sizes --info totals --info unused --info veneers
--list ".\Listings\pro.map"
-o .\Objects\pro.axf



Read/Only Memory Areas中的起始地址和大小对应的是scatter文件中的映像文件的加载地址和加载存储区域的大小;映像文件中RO部分的加载地址等于运行地址;而Read/Write Memory Areas中的地址即RW部分的运行地址。

Use Memory Layout from Target Dialog Scatter File的更多相关文章

  1. Memory Layout for Multiple and Virtual Inheritance

    Memory Layout for Multiple and Virtual Inheritance(By Edsko de Vries, January 2006)Warning. This art ...

  2. Memory Layout (Virtual address space of a C process)

    Memory Layout (Virtual address space of a C process) 分类: C语言基础2012-12-06 23:16 2174人阅读 评论(0) 收藏 举报 f ...

  3. Memory Layout of C Programs

    Memory Layout of C Programs   A typical memory representation of C program consists of following sec ...

  4. Kernel Memory Layout on ARM Linux

    这是内核自带的文档,讲解ARM芯片的内存是如何布局的!比较简单,对于初学者可以看一下!但要想深入理解Linux内存管理,建议还是找几本好书看看,如深入理解Linux虚拟内存,嵌入系统分析,Linux内 ...

  5. 【ARM-Linux开发】Linux内存管理:ARM Memory Layout以及mmu配置

    原文:Linux内存管理:ARM Memory Layout以及mmu配置 在内核进行page初始化以及mmu配置之前,首先需要知道整个memory map. 1. ARM Memory Layout ...

  6. Memory layout of x86_64 in Linux

    Blue : User Space 128TBRed : Kernel Space 512MBThe rest of the address space goes to various parts o ...

  7. C/C++ Memory Layout

    参考 http://www.cnblogs.com/skynet/archive/2011/03/07/1975479.html

  8. C Memory Layout C语言中的内存布局

    在C语言中,内存的主要分为下列几部分: 1. Text/Code Segment 文本/代码区 2. Initialized Data Segments 初始化的数据区 3. Uninitialize ...

  9. Memory layout

    Text Segment       Text Segment,通常也被称为代码段. 为了防止 heap 或是 stack 的溢出,text 段常被安排在 heap 或是 stack 之后. Text ...

随机推荐

  1. python之小数据池

    代码块 Python 程序 是由代码块构造的.块是一个python程序的文本,它是作为一个执行单元的. 代码块:一个模块,一个函数,一个类,一个文件等都是一个代码块. 而作为交互方式输入的每个命令都是 ...

  2. antd-design model 数据特点

  3. AWS免费云服务套餐申请步骤及常见问题

    AWS免费云服务套餐申请步骤及常见问题 AWS免费使用套餐常见问题_AWS免费云服务套餐_-AWS云服务https://amazonaws-china.com/cn/free/faqs/ 什么是 AW ...

  4. byte & 0xff char 转换

    https://blog.csdn.net/lixingtao0520/article/details/75450883 版权声明:本文为博主原创文章,转载请注明作者与出处,http://blog.c ...

  5. make: *** /lib/modules/3.10.0-327.el7.x86_64/build: 没有那个文件或目录。 停止。

    1.问题: [root@localhost]# make make -C /lib/modules/-.el7.x86_64/build M=/home/csri/poc/adore modules ...

  6. AtCoder Beginner Contest 088 (ABC)

    A - Infinite Coins 题目链接:https://abc088.contest.atcoder.jp/tasks/abc088_a Time limit : 2sec / Memory ...

  7. bp暴力破解(转载)

    在kali linux系统环境下自带burpsuite软件工具. 一.打开浏览器需要先设置将代理设置为本地. 打开firefox浏览器->open menu->preferences-&g ...

  8. Django之MVC和MTV

    一. MVC MVC 是一种使用 MVC(Model View Controller 模型-视图-控制器)设计创建 Web 应用程序的模式: Model(模型)表示应用程序核心(比如数据库记录列表). ...

  9. lnmp重置密码

    wget http://soft.vpser.NET/lnmp/ext/reset_mysql_root_password.sh;sh reset_mysql_root_password.sh

  10. asyncio 学习

    来自:https://www.syncd.cn/article/asyncio_article_02 一.asyncio之—-入门初探 通过上一篇关于asyncio的整体介绍,看过之后基本对async ...