特别提示:整个过程中计算机必须联网,因为有些程序需要从网络上下载!
一、安装Ubuntu 11.04
- 1、首先用虚拟机安装ubuntu 11.04版本,建议将硬盘空间设大一点,80G最好,编译linux,根文件系统会占用很多的硬盘空间。
登陆后修改root密码
这里需要输入现在的密码,以及root的新密码
密码更改完毕后,重新启动系统,以root身份登陆。
- 2、更新系统
安装gedit编辑软件
修改文件
1
| gedit /etc/network/interfaces
|
按键盘“i”
添加如下内容
1 2 3 4 5 6 7 8
| auto lo iface lo inet loopback auto eth0 iface eth0 inet static address 192.168.1.158 netmask 255.255.255.0 gateway 192.168.1.1 nameserver 192.168.1.1
|
在命令行输入命令重启网络
1
| /etc/init.d/networking restart
|
查看最新的网络状态,输入:
测试网络:
按“Ctrl+C”可以退出测试
- 5、安装SSH服务,使用SSH可以方便用户远程登录虚拟机,默认情况下ubuntu没有安装,需要自己安装
1
| apt-get install openssh-server openssh-client
|
安装完成后,启动SSH
二、TFTP安装
1 2
| apt-get install tftpd apt-get install openbsd-inetd
|
将下面的内容添加到文件中去
1
| tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd /srv/tftp
|
/srv/tftp为TFTP的目录
1
| /etc/init.d/openbsd-inetd restart
|
重启后终端显示如下则表示配置完成
* Restarting internet superserver inetd [ OK ]
终端显示如下表示正常
三、NFS
1
| apt-get install nfs-common nfs-kernel-server
|
1 2 3
| cd /srv mkdir nfs chmod 777 nfs
|
- 3、修改/etc/exports,将上面建立的NFS文件夹export出去
在文件最后添加
1
| /srv/nfs *(rw,no_root_squash,sync)
|
保存后退出
1
| /etc/init.d/nfs-kernel-server start
|
终端显示
1 2
| Export list for localhost: /srv/nfs *
|
四、安装ARM交叉编译器
编译ARM程序需要用到交叉编译器,我们这里使用arm-2007q1-10-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2,这个GCC版本为4.2.0
复制压缩包到/opt目录下然后解压缩
1
| tar -xvjf arm-2007q1-10-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2
|
解压缩完后,可以看一下bin目录,这里是编译器的程序。
添加工具链到用户PATH,需要修改用户shell的脚本文件,默认使用bash,需要修改~/.bashrc
在文件最后添加
1 2
| export PATH=$PATH:/opt/arm-2007q1/bin
|
保存后退出
运行下面命令使得更改立即生效
1 2
| source ~/.bashrc echo $PATH
|
屏幕显示如下
1
| /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/opt/arm-2007q1/bin
|
可以看到 ARM编译器的路径已经添加了。
检验安装效果
1
| which arm-none-linux-gnueabi-gcc
|
显示如下
1
| /opt/arm-2007q1/bin/arm-none-linux-gnueabi-gcc
|
再看下具体细节
1
| arm-none-linux-gnueabi-gcc -v
|
注意:64位系统需执行以下指令,否则会提示(bash:/opt/arm-2007q1/bin/arm-none-linux-gnueabi-gcc: 没有那个文件或目录)
1
| apt-get install lsb-core
|
出现以下信息说明已经安装成功了
1 2 3 4 5
| Using built-in specs. Target: arm-none-linux-gnueabi Configured with: /scratch/paul/arm/src/gcc-4.2/configure --build=i686-pc-linux-gnu --host=i686-pc-linux-gnu --target=arm-none-linux-gnueabi --enable-shared --enable-threads --disable-libmudflap --disable-libssp --disable-libgomp --disable-libstdcxx-pch --with-gnu-as --with-gnu-ld --prefix=/opt/codesourcery --enable-languages=c,c++ --enable-symvers=gnu --enable-__cxa_atexit --with-versuffix=CodeSourcery Sourcery G++ Lite 2007q1-10 --with-pkgversion=CodeSourcery Sourcery G++ Lite 2007q1-10 --with-bugurl=https://support.codesourcery.com/GNUToolchain/ --disable-nls --with-sysroot=/opt/codesourcery/arm-none-linux-gnueabi/libc --with-build-sysroot=/scratch/paul/arm/install/arm-none-linux-gnueabi/libc --enable-poison-system-directories --with-build-time-tools=/scratch/paul/arm/install/arm-none-linux-gnueabi/bin --with-build-time-tools=/scratch/paul/arm/install/arm-none-linux-gnueabi/bin Thread model: posix gcc version 4.2.0 20070413 (prerelease) (CodeSourcery Sourcery G++ Lite 2007q1-10)
|
如果想要安装arm-2009q3-67-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2,同样按上面的步骤操作,arm-2009q3-67-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2的GCC版本为4.4.1
五、安装工具
安装进行内核图形化配置是所需的依赖
1
| apt-get install libncurses5-dev ncurses-term
|
安装xconfig的依赖
1
| apt-get install libqt3-headers libqt3-mt-dev libqt3-compat-headers libqt3-mt g++
|
六、编译buildroot所需安装包
1 2
| apt-get install make flex bison m4 ncurses-dev gettext texi2html texinfo zlib1g zlib1g-dev liblzo2-2 liblzo2-dev libacl1 libacl1-dev libglib2.0-dev autoconf automake libtool apt-get install subversion
|
七、SAM-BA所需安装包
1 2 3 4 5
| apt-get install linux-image-generic linux-headers-generic # On 64 bits version install 32 bits libraries: apt-get install ia32-libs chmod +x sam-ba ln -s /dev/ttyACM0 /dev/ttyUSB0
|
运行sam-ba