红联Linux门户
Linux帮助

UBUNTU7.10的ARM编译环境建立于内核编译

发布时间:2008-03-16 12:41:05来源:红联作者:itceoaug
  网上这样的资料有很多,我是记录我自己的安装编译过程,遇到的一些问题,希望可以为后面的朋友提供帮助。

  我用的板子是深圳优龙的FS2410,在其光盘里面有编译好的工具链(开始我也想自己编译,可是出的问题太多,我这个菜鸟暂时很难解决,希望后面我可以攻克。),优龙也使用的CROSSTOOL工具链,他的版本是3.3.2.现在最新的好像是crosstool-0.4.3,可以从其http://kegel.com/crosstool上面下载最新的。

  由于优龙的已经编译好,直接解压就可以了:

  tar jxvf c*.bz2 ;//c*.bz2是简写,为了写方便,解压到自己想要的目录里面

  这时候你需要添加PATH才可以在别的目录使用arm-linux-的工具。具体方法为:修改/etc/bash.bashrc,在后面把你的具体的工具链路径加进去,我的工具是在:/usr/local/arm/3.3.2,所以,我在最后加:

  export PATH=/usr/local/arm/3.3.2:$PATH

  现在你可以写一个简单的程序,测试下是否安装成功,一般应该没什么问题

  EG:#arm-linux-gcc -o filename1 filename2.c
    #file filename1

  若出现这样类似的提示,说明已经安装好了:ELF 32-bit LSB executable, ARM, version 1, for GNU/Linux 2.0.0, dynamically linked (uses shared libs), not stripped

  32位的ELF格式文件已经编译好!

  下面,准备编译内核:
  首先从网上下载你所需要的内核,我下载的是2.6.8

  首先还是解压
  tar jxvf ****
  cd ****

  修改makefile(用vi,还是gedit什么的,个人爱好,我用VI)

  vi Make*
  进入后,可以先搜索(/str)
  ARCH=arm
  CROSS_COMPILE=/你的路径/arm-linux- ;//这一步很关键,后面你能够make zImage就看这里的路径是不是对的。

  然后就可以make menuconfig,因为我是小菜,还是习惯用这种方式去配置内核,直接文本配置,我现在功力还不到。


  这时候好多用UBUNTU的用户可能会出一些问题,这里问题我没有记录下来,大体上有2个问题这里:

  1.权限不够,需要使用sudo
  2.缺少 NCURSES库的函数支持,需要安装该库,我是在网上下的,因为不知道UBUNTU的库里叫什么,atp-get的时候没有找到。

  注意上面2点后一般就没什么问题了。最后就是你最喜欢的,make zImage。然后看到屏幕一排一排的编译信息被打印出来,真是有说不出的快感!

  就写到这里了,还有问题需要讨论的,大家可以和我联系:dahai_boy@163.com
文章评论

共有 0 条评论