ARM裸机_5_ledc_bsp_Makefile详解

Makefile使用:

近日,在学习imx6ull裸机开发时候,对于其Makefile文件编写一直处于懵懂状态,为方便日后深入学习,本文章以正点原子BSP-工程管理实验闪烁小灯为例,对其中Makefile文件语法进行注释解析。


代码及解释

实验imx6ul.lds代码如下

SECTIONS{
	. = 0X87800000;
	.text :
	{
		obj/start.o 
		*(.text)
	}
	.rodata ALIGN(4) : {*(.rodata*)}     
	.data ALIGN(4)   : { *(.data) }    
	__bss_start = .;    
	.bss ALIGN(4)  : { *(.bss)  *(COMMON) }    
	__bss_end = .;
}

实验中Makefile代码如下:

CROSS_COMPILE ?= arm-linux-gnueabihf-
TARGET		  ?= ledc

其中赋值符有如下几种类型:

=:在给变量的赋值的时候,不一定要用已经定义好的值,也可以使用后面定义的值
:=:不会使用后面定义的变量,只能使用前面已经定义好的,这就是“=”和“:=”两个的区别
?=:表示如果变量时,前面没有被赋值,那么此变量就是当前赋值的值,如果前面已经赋过值了,那么就使用前面赋的值。

CC 			:= $(CROSS_COMPILE)gcc
LD			:= $(CROSS_COMPILE)ld
OBJCOPY 	:= $(CROSS_COMPILE)objcopy
OBJDUMP 	:= $(CROSS_COMPILE)objdump

此处CC经赋值后,结果为:
CC = arm-linux-gnueabihf-gcc 这样做的目的是便于我们之后使用变量,其他的同理。

INCUDIRS	:= imx6u     \
			   bsp/clk   \
			   bsp/led   \
			   bsp/delay 

SRCDIRS 	:= project   \
			   bsp/clk   \
			  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值