包含LPC2200移植代码的uClinux的编译步骤!
自从《ARM嵌入式Linux系统构建与驱动开发范例》出版以来,得到广大读者的青睐和好评,周立功公司在此对各位的支持表示感谢!也希望更多的读者能够通过本书掌握嵌入式Linux的基本开发技能。
《范例》是一本理论指导书,但嵌入式开发往往能具有很强的实践性和操作性,这些实践和操作的步骤在我们产品配套教材已经介绍的非常详细,鉴于有些初学者,手边没有实验指导,而无法正确编译uClinux内核,特此将其中的相关细节摘录出来,和各位分享。
以下是编译过程的文字描述,详细文档(配有图片)见附件,请将附件改名为pdf即可阅读。
uClinux-dist-test-20051209编译步骤
1.1 交叉编译器交叉编译器:arm-elf-tools-20040427.sh
安装方法请参考其它文档。
1.2 下载uClinux-dist-test-20051209.tar.gz到uClinux网站下载uClinux-dist-test-20051209.tar.gz。
1.3 解压源代码将uClinux-dist-test-20051209.tar.gz解压到/usr/src/目录下。
# tar xzvf uClinux-dist-test-20051209.tar.gz -C /usr/src
在/usr/src/目录下多出的文件夹uClinux-dist-test就是uClinux安装路径。
1.4 编译内核进入uClinux-dist-test目录,运行make menuconfig命令,对内核进行配置。
# cd uClinux-dist-test
# make menuconfig
得到界面:
Linux内核配置主界面
选择厂商,选择Philips。
厂商选择
选择产品,选择LPC2200。
选择产品
选择内核和库版本,分别选择Linux-2.4.x和uClibc,并选择默认配置。
选择内核版本、库和默认配置
选择退出并保存。
保存配置
然后make dep,建立依赖关系。
# make dep
依赖关系建立完毕后,编译内核。
# make
1.5 得到内核编译完毕,进入linuc-2.4.x目录,里面生成一个linux文件,大小30多M。
# cd linux-2.4.x
[root@linuxserver linux-2.4.x]# ls -la linux
-rwxr-xr-x 1 root root 33904204 4月 7 17:57 linux
使用objcopy工具,精简内核,得到linux.bin,大小1.05M。
[root@linuxserver linux-2.4.x]# arm-elf-objcopy -O binary linux linux.bin
[root@linuxserver linux-2.4.x]# ls -la linux.bin
-rwxr-xr-x 1 root root 1111812 4ÔÂ 7 18:01 linux.bin
将得到精简后的Linux映象文件linux.bin,这个才是将要下载到目标板的文件。
1.6 下载内核
以SmartARM2200为例。
启动ZLG/BOOT后,选择2,启动FTP服务器,进行FTP连接,将得到的linux.bin下载到目标板的boot目录下,然后复位系统,进入uCLinux,将得到如下所示的uCLinux界面。
郑重声明
1: 有些网友说我们不遵守GNU/GPL协议,这是不负责任的说法!我们在LPC2200系列芯片上的移植代码在我们移植成功后,就提交给uClinux维护组织了,从uClinux.org下载的uClinux-dist-test-20051209.tar.gz在LPC2200上的移植代码与使用我们提供的补丁文件对uClinux-dist-20040408.tar.gz打补丁后的代码完全一样. 我们已经将我们的移植成果全部贡献给了开源社区,并且将我们的移植心得整理成书出版,为的就是让更多的爱好者能够掌握嵌入式Linux.还有什么理由说我们不遵守GNU/GPL协议?什么是GNU/GPL协议,请参考其官方网站.
2: 我们产品光盘都不使用uClinux-dist-test-20051209.tar.gz而采用补丁文件,是因为我们产品上市的时候,移植代码的验收工作还没有完全结束,因为他们需要在我们的产品上验证,这需要时间,我们不可能等到uClinux组织验证完毕才将产品上市. 使用补丁和使用新版本的uClinux发行版是完全一样的.
附件地址:请改后缀名为pdf
(from:)
阅读(2041) | 评论(1) | 转发(0) |