arm-linux-gcc 和Makefile

发布者:RadiantExplorer最新更新时间:2022-05-29 来源: eefocus关键字:arm-linux-gcc  Makefile  指令 手机看文章 扫描二维码
随时随地手机看文章

Makefile文件编写


all:

    arm-linux-gcc -c -o led_on.o led_on.s

    arm-linux-ld -Ttext 0 led_on.o -o led_on.elf  //arm-linux-ld用于将多个目标文件、库文件链接成可执行文件 -T选项是用来指定代码段、数据段、bss段的起始地址,也可以用来指定一个连接脚本,在脚本中进行更复杂的地址设置 -Ttext 0 指定代码段的起始地址为0  -Tdata 用来指定数据段 -Tbss用来指定bss段的起始地址


    arm-linux-objcopy -O binary -S led_on.elf led_on.bin //用来复制一个文件到另一个文件中,常用来将.elf文件转换为二进制文件  -O binary 表示输出二进制文件  -S表示不从源文件中复制重定位信息和符号信息到目标文件中去 led_on.elf源文件  led_on.bin输出文件

    arm-linux-objdump -D led_on.elf > led.dis //生产机器码

clean:

    rm *.bin *.o *.elf

make clean 命令执行清除指令


make 命令执行all下面所有的编译,联接,生成指令


Makefile 必须使用Tab以每行的开始

Makefile使用规则


目标:依赖


命令(command)


test:led.o led.s led_on.o

led_on.o:led_on.s  //执行下面语句时先检测led_on.s是否改变,如果没有改变就跳过,使用以前的led_on.o

    arm-linux-gcc -c -o led_on.o led_on.s

led.s:led.c

    arm-linux-gcc -S -o led.s led.c

led.o:led.s

    arm-linux-gcc -c -o led.o led.s   

    arm-linux-ld -Ttext 0 led_on.o led.o -o led_on.elf 

    arm-linux-objcopy -O binary -S led_on.elf led_on.bin 

    arm-linux-objdump -D led_on.elf > led.dis

    rm *.bin *.o *.elf

Makefile通配符介绍


%.type1:%.type.2   解释type1格式文件都是目标,type2格式文件都是依赖项

关键字:arm-linux-gcc  Makefile  指令 引用地址:arm-linux-gcc 和Makefile

上一篇:arm s32440a系统时钟设置
下一篇:使用J-LINK烧写MICRO2440的NOR

推荐阅读最新更新时间:2024-11-11 11:10

ARM汇编指令集之九——协处理器指令
1、CDP指令 CDP指令的格式为: CDP{条件} 协处理器编码,协处理器操作码1,目的寄存器,源寄存器1,源寄存器2,协处理器操作码2。 CDP指令用于ARM处理器通知ARM协处理器执行特定的操作,若协处理器不能成功完成特定的操作,则产生未定义指令异常。其中协处理器操作码1和协处理器操作码2为协处理器将要执行的操作,目的寄存器和源寄存器均为协处理器的寄存器,指令不涉及ARM处理器的寄存器和存储器。 指令示例: CDP P3,2,C12,C10,C3,4 ;该指令完成协处理器P3的初始化 2、LDC指令 LDC指令的格式为: LDC{条件}{L} 协处理器编码,目的寄存器, LDC指令用于将源寄存器所指向的存
[单片机]
ARM-LINUX-GCC交叉编译工具链必知必会
一、一些需要知道的概念 在正式谈论交叉编译工具ARM-LINUX-GCC前,我想有必要明确两个非常基本的概念。 1、什么是交叉编译,什么是交叉编译工具链:https://www.crifan.com/files/doc/docbook/cross_compile/release/html/cross_compile.html#what_is_crosscompile,只需要关注此文章的第一章与第二章。2、GCC与ARM-LINUX-GCC的关系:GCC是一套编译工具链,一般来说,其用于将代码编译成在X86架构电脑上运行的可执行文件,而ARM-LINUX-GCC可以看成经过特殊配置的GCC,其编译出的程序并不是跑在X86架构电脑
[单片机]
<font color='red'>ARM-LINUX-GCC</font>交叉编译工具链必知必会
8051单片机指令定义详解——ACALL addr11(1)
8051单片机指令定义详解 (ACALL addr11) 符号说明 符 号 说 明 表示数据传送方向 () 表示单元的内容 (()) 表示间接寻址的内容 rrr 8个工作寄存器之一;000=R0,001=R1等 dddddddd 数据位 aaaaaaaa
[单片机]
arm-linux-gcc .s 和 .S 的区别 !
unix/linux 对 大小写敏感: .s 操作 :汇编 .S 操作 : cpp + 汇编 eg: /* start.s */ #define rTEXT 0x12345678 LDR R0,=rTEXT .... # arm-linux-gcc -g -c -nostdlib start.s -o start.o # nm -u start.o rTEXT # arm-linux-objdump -S -t start.o start.l # cat start.i | grep ''R0 LDR R0,【PC,#0】 经典错误: arm-linux-gcc 将.s 文件误认为cpp处理后
[单片机]
三菱PLCfx3U主控指令使用
三菱PLC FX3U是一款功能强大的小型控制器,广泛应用于工业自动化领域。其主控指令是实现程序控制的核心,对于编程人员来说,熟练掌握这些指令至关重要。本文将详细介绍三菱PLC FX3U的主控指令,包括其功能、语法和应用场景等。 1. 概述 三菱PLC FX3U的主控指令主要包括以下几种类型: 程序开始和结束指令 条件判断指令 循环控制指令 跳转指令 中断指令 子程序调用指令 2. 程序开始和结束指令 2.1 程序开始指令(ORG) 程序开始指令ORG用于指定程序的起始地址。在PLC程序中,程序总是从ORG指令指定的地址开始执行。 语法: ORG Xn 其中,Xn是一个16位的寄存器,用于存储程序的起始地址。 2.2
[嵌入式]
ARM汇编协处理器指令
协处理器(coprocessor),一种芯片,用于减轻系统微处理器的特定处理任务。 ARM 微处理器可支持多达 16 个协处理器用于各种协处理操作。 在程序执行的过程中,每个协处理器只执行针对自身的协处理指令,忽略 ARM 处理器和其他协处理器的指令。 ARM 的协处理器指令主要用于 ARM 处理器初始化 ARM 协处理器的数据处理操作,以及在ARM 处理器的寄存器和协处理器的寄存器之间传送数据,和在 ARM 协处理器的寄存器和存储器之间传送数据。   ARM协处理器包括以下5条:   CDP:协处理器数操作指令。   LDC:协处理器数据加载指令。   STC:协处理器存储指令。   MCR:ARM处理器寄存器到协
[单片机]
abb机器人编程指令详解中的call什么意思
ABB机器人编程指令详解中的“call”是一个非常重要的指令,它允许程序员在程序中调用另一个程序或子程序。 概述 在ABB机器人编程中,程序是由一系列的指令组成的,这些指令可以控制机器人的运动、操作和逻辑。然而,随着程序的复杂性增加,将所有指令都放在一个程序中可能会导致代码难以维护和理解。为了解决这个问题,ABB提供了“call”指令,允许程序员将一部分代码封装成一个子程序,然后在主程序中调用这个子程序。 语法 “call”指令的基本语法如下: call 其中: `` 是要调用的子程序的名称。 是可选的参数列表,用于传递数据给子程序。 功能 “call”指令的主要功能是调用子程序。子程序可以是一个独立的程序,
[嵌入式]
ARM指令B和BL解析
ARM指令B和BL解析 B或BL指令引起处理器转移到 子程序名 处开始执行,也就是跳转指令。 两者的不同之处在于BL指令在转移到子程序执行之前,将其下一条指令的地址拷贝到R14(LR,链接寄存器)。由于BL指令保存了下条指令的地址,因此使用指令 MOV PC ,LR 即可实现子程序的返回。而B指令则无法实现子程序的返回,只能实现单纯的跳转。用户在编程的时候,可根据具体应用选用合适的子程序调用语句。
[单片机]

推荐帖子

三分钟带你了解PCB辐射抑制和屏蔽的技术措施,收藏先
1、什么是EMC?EMC(ElectroMagneticCompatibility)即电磁兼容性。是指在特定的电磁环境下,设备或系统所产生的电磁能量既不对其他电子设备产生干扰,也不受其他电子设备的电磁能量干扰的能力。对于EMC,相应的标准有欧洲的CE认证、美国的FCC认证和中国的3C认证,电子产品要想在对应的区域合法销售,就必须取得符合相应地方的认证。2、EMC=EMI+EMSEMI(ElectromagneticInterface)即电磁干扰,具体指的是电子设备上
吾妻思萌 PCB设计
AD549如何实现调零、
第一种:TheAD549inputoffsetvoltagecanbenulledbyusingbalancePin1andPin5。Nullingtheinputoffsetvoltageinthisfashionintroducesanaddedinputoffsetvoltagedriftcomponentof2.4μV/°CpermVofnulledoffset(amaxi-mum
flytosky8 模拟电子
霍尔传感器应用方面的一些资料
霍尔传感器应用方面的一些资料很好的知识,有种豁然开朗的感觉,感谢楼主分享。
littleshrimp 传感器
MMC存储卡技术
frozenviolet 移动便携
关于51单片机的键盘显示问题
#includedisplay.h#includekeyscan.h#include12864.h#includedelay.hvoiddisplay(void){unsignedcharx,y,a,first,end;unsignedcharn=0;inti;for(i=0;i2;i++){a=keyscan();if(
暮日落流年 51单片机
五角大楼将用射频技术管理军事物资 (转贴)
2002年,美国运送于伊拉克战线的军备和军事物资中,有近12亿资产的物资没有记录。事后,美国五角大楼欲与其军火商签订合约,将信息采集技术从单纯的条码识别采集转变为射频识别技术采集(RFID)。五角大楼以已射频技术使用纳入了计划日程。分别在宾西法尼亚州(Pennsylvania)和加利福尼亚州(California)两家军火供应商已开始使用射频技术,该技术还会逐渐推广到其他17个军火供应据点。五角大楼希望射频技术的普及能够在今年完成。波士顿(Boston)AMR研究中心分析员KaraRoma
JasonYoo RF/无线
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved