uboot版本:u-boot-2010.09 交叉编译工具链:arm-linux-gcc 4.4.3
1.修改顶层Makefile
a.指定交叉编译工具链
//找到 CROSS_COMPILE 位置,指定交叉编译工具链
# set default to nothing for native builds
ifeq ($(HOSTARCH),$(ARCH))
CROSS_COMPILE ?=arm-linux-
export CROSS_COMPILE
endif
b.按照smdk6400_config的格式建立th6410_config的编译选
//找到smdk6400_noUSB_config 位置 在下面添加:
tiny6410_noUSB_config \
tiny6410_config : unconfig
@mkdir -p $(obj)include $(obj)board/samsung/tiny6410
@mkdir -p $(obj)nand_spl/board/samsung/tiny6410
@echo "#define CONFIG_NAND_U_BOOT" > $(obj)include/config.h
@echo "CONFIG_NAND_U_BOOT = y" >> $(obj)include/config.mk
@if [ -z "$(findstring tiny6410_noUSB_config,$@)" ]; then \
echo "RAM_TEXT = 0x57e00000" >> $(obj)board/samsung/tiny6410/config.tmp;\
else \
echo "RAM_TEXT = 0xc7e00000" >> $(obj)board/samsung/tiny6410/config.tmp;\
fi
@$(MKCONFIG) tiny6410 arm arm1176 tiny6400 samsung s3c64xx
@echo "CONFIG_NAND_U_BOOT = y" >> $(obj)include/config.mk
2.准备好tiny6410工作目录
a.
//解压源码 #tar -jxvf u-boot-2010.09.tar.bz2 //进入目录 #cd u-boot-2010.09/board/samsung/ //创建tiny6410目录 #mkdir tiny6410 //以smdk6400为模板复制到我们的tiny6410目录内 #cp smdk6400/* tiny6410/ //进入tiny6410目录 #cd tiny6410 //改名 #mv smdk6400.c tiny6410.c //修改tiny6410下Makefile的编译项,如下: COBJS := tiny6410.o
b.
#cd nand_spl/board/samsung/ #mkdir tiny6410 #cp smdk6400/* tiny6410/
3.测试编译新建的tiny6410 uboot项目
#make tiny6410_config #make
转载于:https://blog.51cto.com/svoday/1290291