at91 patch for 2.6.x
maxim.org.za的ip被封,所以顺手把patch拷过来提供下载。 2.6.24-at91.patch.gz 2.6.23-at91.patch.gz 2.6.22-at91.patch.gz
maxim.org.za的ip被封,所以顺手把patch拷过来提供下载。 2.6.24-at91.patch.gz 2.6.23-at91.patch.gz 2.6.22-at91.patch.gz
client机也需要portmap,除非设置nolock参数。报error -5 一般是这个原因。
只有从源码建立才能最大限度保证兼容和稳定,尤其是现在各个发行套件使用的glibc甚至ABI版本都不同,因此必须使用一个buildroot套件进行工作。我选的是OpenEmbeded ( http://www.openembedded.org ),使用12/2007发布的stable版本,库和程序较新,又很稳定,可以轻松建立从bootstrap到desktop的环境,同时保持很不错的可定制能力,最难得的是这个套件生成的rootfs几乎是最省空间的。 为了开发方便,可以把rootfs根目录直接挂上工作站的某个 NFS path,这样对文件系统的修改就方便很多。NFS的参数要作为args传给内核,内核中必须打开IP自动配置和NFS支持。挂载上rootfs开始init后系统会remount一次,这回用的不是kernel args里面指定的IP配置了,因此要修改启动脚本让网络环境设置正确。我在这里卡了一点时间,由于dhcp程序不能正常工作,将之nuke掉就好了。 一开始rootfs不用太精简,略微臃肿一些无妨,反正是用NFS rootfs。这样可以避免缺少某些包而启动失败,等系统运行正常再开始剪裁也不迟。注意OE的一些bootstrap-image helloworld-image等等精简系统似乎不能适应NFS rootfs环境,我在这里转了很大一圈,现在确定可以使用的最简配置如下:
当然是在x86 host上的。 首先试了uclibc的buildroot,可编译toolchain和rootfs,svn更新。使用很方便,用了类似内核和busybox的配置界面menuconfig,可定制项目较细,自动化程度好。但是有个硬伤,不能选择使用glibc,强制使用uclibc。。。。但可能有patch能去掉这个限制。考虑到这个项目的主页也是buildroot.uclibc.org就不难理解这个限制了。对于使用uclinux的用户倒是很合适。 http://buildroot.uclibc.org 其次是timesys的商业套件,直接提供成品toolchain和BSP。大致每个季度更新,可以下载个人版,基本的工具还是全的。这公司似乎同atmel和arm联系较紧密 ,技术应该很可靠,但是要真正做项目个人版还是不够的,不过个人版提供的一些资料还是很由用处。顺便说一句,我的ebd9261就是提供了这个作为开发工具。 http://www.timesys.com 接着是open embedded,可编译toolchain和target package。总得来说做得不错,自动化程度很高,随时更新(用户从版本库检出更新),使用配置文件进行基本配置,可以选择任意包编译。build package的时候会把需安装的文件单独存放,而且粒度很细,比如vim就分放在vim vim-common vim-doc vim-dev vim-syntax vim-dbg vim-help等目录下,同时也提供存放完整vim文件的目录,还提供上述所有的ipk包,总之很是贴心。但是本项目使用的版本管理工具略显怪异。。 http://www.openembedded.org 随后是gentoo自己的crossdev,这个没什么可说的,四海一家的方案。。。 http://www.gentoo.org/proj/en/base/embedded/handbook