1)MT8516 64bit 工具链:http://www.zelustek.com/zh-cn/download/aaT2CADf
2)MT8516 32bit 工具链:http://www.zelustek.com/zh-cn/download/ppkHbF56
3)MT8516 工具链使用说明:http://www.zelustek.com/zh-cn/download/HD1aj9ks
本人开发机系统环境:Ubuntu 16.04 64位
unzip yocto-64bit-toolchain.zip
cd ./ yocto-64bit-toolchain
sudo ./oecore-x86_64-aarch64-toolchain-nodistro.0.sh
执行过程中首先提示SDK抽出路径,默认为/usr/local/oecore-x86_64,可以修改,也可以使用默认值,这里使用默认值,直接回车确定即可。
source /usr/local/oecore-x86_64/environment-setup-aarch64-poky-linux
#source files and objects
SRCS := main.c
OBJS := $(SRCS:%.c=%.o)
#target you can change test to what you want
TARGET := ledtest
#compile and lib parameter
CFLAGS := -Wall -std=gnu99
INC := -I. -I./include
LDDIR := -L. -L./lib
LIBS := -lasound -lled
$(TARGET) : $(OBJS)
@echo TARGET:$@
@echo OBJECTS:$^
$$CC -o $@ $^ $(LDDIR) $(LIBS)
%.o:%.c
$$CC $(CFLAGS) $(INC) -c $< -o $@
PHONY:clean
clean:
rm -rf $(TARGET) $(OBJS)
1)environment-setup-aarch64-poky-linux配置文件给出了MT8516交叉编译工具链配置相关信息,包括环境变量设置、CC编译器、CXX编译器定义、CFLAGS定义等,具体内容可以打开文件并查看;
2)make前需执行第2.3步;
3)sysroot目录:/usr/local/oecore-x86_64/sysroots/aarch64-poky-linux,用于交叉编译系统根目录。