armasm

1. 命令:armasm [选项] -o 目标文件 源文件

2. 选项说明

-Errors 错误文件名        ;指定一个错误输出文件

-I 目录[,目录]          ;指定源文件搜索目录

-PreDefine  预定义宏     ;指定预定义的宏

-NOCache               ;编译源代码时禁止使用 Cache 进行优化

-MaxCache <n>          ;编译源代码时使用 Cache 进行优化

-NOWarn                ;关闭所有的警告信息

-G                     ;输出调试表

-keep                  ;在目标文件中保存本地符号表

-LIttleend             ;生成小端(Little-endian) ARM 代码

-BIgend                ;生成大端(Big-endian) ARM 代码

-CPU   <target-cpu>    ;设立目标板 ARM 核类型,如: arm920t.

-16                    ;建立 16 位的 thumb 指令.

-32                    ;建立 32 位的 ARM 指令.

3. 编译一个汇编文件

c:\adsloader>armasm -LIttleend -cpu ARM920T -32 bdinit.s

把汇编语言编译成小端, 32 位, ARM920T CPU.

armcc, armcpp

1. 命令:armcc [选项] 源文件 1 源文件 2 ... 源文件 n

2. 选项说明

-c                     ;编译但是不连接

-D                     ;指定一个编译时使用的预定义宏常量

-E                     ;仅仅对 C 源文件做预处理

-g                     ;产生调试信息表

-I                     ;指头文件的搜索路径

-o<file>               ;指定一个输出的目标文件

-O[0/1/2]              ;指定源代码的优化级别

-S                     ;输出汇编代码来代替目标文件

-CPU   <target-cpu>    ;设立目标板 ARM 核类型,如: arm920t.

3.编译一个 C 程序

c:\adsloader>armcc -c -O1 -cpu ARM920T bdisr.c

编译不连接, 二级优化, ARM920T CPU.

armlink

1. 命令:armlink [选项] 输入文件

2. 选项说明

-partial               ;合并目标文件

-Output 文件             ;指定输出文件名

-scatter 文件            ;按照指定的文件为可执行文件建立内存映射

-ro-base 地址值          ;只读代码段的起始地址

-rw-base 地址值          ;RW/ZI 段的起始地址

3. 把多个目标文件合并成一个目标文件

c:\adsloader>armlink -partial
bdmain.o bdport.o bdserial.o bdmmu.o bdisr.o -o bd.o

4. 把几个目标文件编译一个可执地文件

c:\adsloader>armlink bd.o bdinit.o -scatter bdscf.scf -o
bd.axf

fromelf

1. 命令:fromelf [选项]
输入文件

2. 选项说明

-bin     二进制文件名     ;产生的二进制文件

-elf     elf 文件名       ;产生一个 elf 文件

-text    text 文件名      ;产生 text 文件

3. 产生一个可执行的二进制代码

c:\adsloader>fromelf bd.axf ­bin ­o bd.bin

最新文章

  1. scikit-learn一般实例之四:使用管道和GridSearchCV选择降维
  2. Python测试函数的方法之一
  3. Android 浮窗开发之窗口层级
  4. TCP/IP连接状态
  5. Java Web学习系列——Maven Web项目中集成使用Spring、MyBatis实现对MySQL的数据访问
  6. C#中的lock关键字;就是lock住一个大家都共同访问的(静态static的)东东就行了
  7. 在 linux(ubuntu) 下 安装 LibSVM
  8. 利用QT制作我们自己的一个计算器
  9. Spring 表单提交,后台自动封装有集合对象的对象
  10. Visual Studio命令行创建库文件lib
  11. Apache POI 示例
  12. ES 常用的查询语句介绍
  13. 老K漫谈区块链的共识(1)——免信任的共识机制
  14. 计数排序与桶排序python实现
  15. 讲一个关于paxos的故事...
  16. java File处理
  17. 第一天:html+JavaScript函数
  18. Python3安装turtle提示错误:Command &quot;python setup.py egg_info&quot; failed with error code 1
  19. matlab rand, randn, randi
  20. ADB连接不上手机,端口5037被占用的情况解决

热门文章

  1. WPF 动态添加控件以及样式字典的引用(Style introduction)
  2. 关于solr的一些知识
  3. 5、springcloud整合mybatis注解方式
  4. WPF gridcontrol 后台代码清除过滤筛选条件
  5. 目标检测从入门到精通—R-CNN详细解析(二)
  6. 在Mac OS终端的Terminal 中使用Sublime Text3
  7. SpringMVC整合Freemarker(含Demo源码)(转)
  8. windows更改文件打开方式
  9. MyBatis 通过包含的jdbcType类型
  10. SpringCloud---分布式服务跟踪---Spring Cloud Sleuth