[1]环境搭建
安装交叉编译工具链(arm-linux-gcc4.4.3)
详见Bolg。
交叉编译基础
arm-linux-gcc常用命令
1.查看头文件和库文件的搜索路径:
arm
-linux-gcc -print-libgcc-file-name
2.arm-linux-gcc常用命令
arm
-linux-gcc -g -c led
.S
arm
-linux-ld -Tled.lds
-o led
.elf led
.o
arm
-linux-readelf -a led
.elf
arm
-linux-objdump -D -S led
.elf
arm
-linux-objcopy -O binary led
.elf led
.bin
Makefile基础知识
基本结构
target(目标) : prerequisites(依赖)
command(命令)
变量的使用
-
定义:obj=func1.o func2.o
-
使用:$(obj)
特殊变量
-
$^ :代表所有依赖文件
-
$@ :代表目标
-
$< :代表第一个依赖文件
通用规则(实例)
%.o :
%.c
arm
-linux-gcc -o %@
-g -c %^
链接器脚本
SECTIONS {
. =
0x30008000
. = ALGN(
4)
.text :
{
start
.o(
.text)
*(
.text)
}
. = ALGN(
4)
.data :
{
*(
.data)
}
bss_start=.
. = ALGN(
4)
.bss :
{
*(
.bss)
}
}
设置起始链接地址
. =
0x30008000;
设置4字节对齐
. =
ALGN(4);
变量的使用
bss_start=
.
代码段首文件
start
.o(
.text)
*(
.text)
eclipse集成开发环境
-
arm-linux-gcc
-
arm-linux-gdb
-
JLink_Linux
-
eclipse
注意:环境变量配置在/etc/profile中。
转载请注明原文地址: https://ju.6miu.com/read-659266.html