uClinux编译方法(uClinux-dist-20041215.tar.gz+S3C44B0X)

王朝system·作者佚名  2006-01-31
窄屏简体版  字體: |||超大  

http://www.uclinux.org/pub/uClinux/arm-elf-tools/ 下载arm-elf-tools-20030314.sh

http://www.uclinux.org/pub/uClinux/dist/ 下载uClinux-dist-20041215.tar.gz

执行./arm-elf-tools-20030314.sh,安装工具链,执行tar zxvf uClinux-dist-20041215.tar.gz并进入uClinux-dist目录。

l 在linux-2.4.x/arch/armnommu/vmlinux-armv.lds.in文件中找到以下行:

*(got) /* Global Offset table */

在其之后添加如下语句:

romfs_data = .;

romfs.o

romfs_data_end = .;

注意,等号两边都要有空格。

l 在vendors/Samsung/4510B/Makefile 文件中添加image目标的第三行,增加一条语句:arm-elf-ld -r -o $(ROOTDIR)/$(LINUXDIR)/romfs.o -b binary $(ROMFSIMG)

如下为增加之后:

image:

[ -d $(IMAGEDIR) ] || mkdir -p $(IMAGEDIR)

genromfs -v -V "ROMdisk" -f $(ROMFSIMG) -d $(ROMFSDIR)

arm-elf-ld –r –o /root/uclinux/uClinux-dist/linux-2.4.x/romfs.o –b binary /root/uclinux/uClinux-dist/images/romfs.img

(/root/uclinux是我存放uClinux-dist的目录)

l 修改linux-2.4.x/drivers/char/serial_samsung.c, 找到uart_config数组,把如下项:

{ "S3C4510B", 1, 0}, /* Samsung S3C4510B uart support */

修改为:

{ "S3C4510B", 128, 0}, /* Samsung S3C4510B uart support */

l 执行make menuconfig

此处设置成S3C44B0X

l 修改config/.config,注释掉CONFIG_USER_OLD_PASSWORDS

l 执行make dep

l 执行make lib_only

l 执行make user_only

l 执行make romfs

l 修改linux-2.4.x/arch/armnommu/mach-S3C44B0X/arch.c

将23行的S3C44B0X改为S3C44B0

在代码末尾添加”}”

修改linux-2.4.x/arch/armnommu/kernel/head-armv.S

将206行以及439行的S3C44B0X改为S3C44B0

l 执行make

make成功后,uClinux-dist目录里将出现一个images目录。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航