转自:http://blog.chinaunix.net/uid-21658993-id-1819946.html
ubuntu下开发环境的搭建
交叉编译器的安装
1:下载arm-linux-gcc-3.4.1.tar.bz2 到任意的目录下 我把它下载到了我的工具文件夹里 /home/zt/tools 2:解压 进入工具目录(视具体情况而定)/home/domyself/tools # cd /home/domyself/tools 解压 # tar xvf arm-linux-gcc-3.4.1.tar.bz2 解压过程需要一段时间,解压后的文件形成了 usr/local/ 文件夹 进入该文件夹/home/domyself/tools # cd usr/local/ 将arm文件夹考到/usr/local/下 # cd /home/domyself/tools/usr/local # cp -rv arm /usr/local/ 现在交叉编译程序集都位于/usr/local/arm/3.4.1/bin下面了 3:修改环境变量 export PATH=/usr/local/arm/3.3.2/bin:$PATH 用此方法添加的环境变量会在掉电后丢失,因此,可以在启动脚本里做手脚,方法如下: # vim /etc/bash.bashrc 在文件的最后一行添加以下命令 /home/domyself/tools/usr/local export PATH=/usr/local/arm/3.4.1/bin:$PATH
文件修改后,要使更改环境变量生效一般的做法是重新登录,
运行# source /etc/profile 可以使导出的环境变量马上生效,避免重启
Minicom 的使用
|
1. 启动 Minicom
输入minicom启动,或输入minicom –s直接进入设置模式。
2. 设置
1> 选择串口:在选择菜单中的“Serial port setup”,按回车,再按“A”以设置“Serial Device”
(如果使用串口1,则输入/dev/tty S0,如果您使用串口2,则输入/dev/ttyS1,注意其中的S是大写),按
回车返回。
2> 设置波特率:按“E”键进入设置“bps/par/Bits”(波特率)界面,如果按“I”以设置波特率为
115200,按回车返回。
3> 数据流控制:按“F”键设置“Hardware Flow Control”为“NO”。
其它为缺省设置 ,然后按回车到串口设置主菜单,,选择“Save setup as dfl”,按回车键保存刚
才的设置(保存到“/etc/minirc.dfl),再选择“Exit”退出设置模式,回到minicom操作模式。
此时可像Windows下的超级终端一样使用了。
3. 退出 minicom
按下“Ctrl+A”键,松开后紧接着再按下“Q”键,在跳出的窗口中,选择“Yes”。
4. 其它有用的功能
命令帮助 -- “Ctrl+A”后按 “ Z ”
清屏 -- “Ctrl+A”后按 “ C ”
设置 -- “Ctrl+A”后按 “ O ”
发送文件 -- “Ctrl+A”后按 “ S ”
退出 -- “Ctrl+A”后按 “ Q ”
注意:minicom只有在pc机与开发板连接好才会正常。(这就是之前一直不能正确显示的原因)
1.首先在PC机上安装minicom. sudo apt-get install minicom 关于minicom的一些设置:ctrl+A,然后松开,紧接着按Z,开始设置。退出,ctrl+A,然后松开,紧接着按Q。 2.在PC机上安装nfs. sudo apt-get install nfs-kernel-server nfs-common 3.修改配置文件: vi /etc/exports 在里面加入 /home/nfs *(rw,sync,no_root_squash) /home/nfs 是要共享的目录 4.重启nfs服务 sudo /etc/init.d/portmap restart sudo /etc/init.d/nfs-kernel-server restart 5.OK!基本设置已经搞定. 现在将板子与pc机的串口线连好,进入minicom.那么现在的这个minicom就相当于arm的终端了,只不过让他显示在我们的PC机上而已.在minicom下挂载PC机的nfs共享目录.在minicom登录了arm开发板后,在minicom的终端输入命令: mount -t nfs -o nolock 192.168.1.88:/home/nfs /mnt 或者: mount -t nfs 192.168.1.88:/home/nfs /mnt -o nolock 即我们将PC机做成nfs服务器,arm开发板作为客户机来访问它. 192.168.1.88是这台PC机的IP地址,/mnt/nfs是这快arm开发板可以共享到的PC机的目录。将 192.168.1.88:/home/nfs下的文件挂载到arm开发板的 /mnt目录下. 6.然后我们在我们的PC机上开发,完了之后直接将生成的内容cp到pc机的 /home/nfs 目录下(或则我们直接在此目录下编译也可以),arm板通过minicom就可以共享了.
ubuntu中安装tftp服务
1、安装相关软件包 apt-get install tftpd (服务端) 切换到/tftpboot目录下, (如果不正常可以试着把网线插好,或者重启一下开发板)
用ftp上传文件并执行之(测试成功)
在经历了几万年的努力之后,我终于把交叉编译之后的二进制文件上传到arm板上面,并运行成功! 其过程如下: 1.在pc机上面切换到要上传的目录下,我的是/ftpboot这个目录,hello程序就在这个目录里面 输入: #ftp 192.168.1.230. (上面的IP是目标板IP,pc机ip为192.168.1.88,二者必须在同一个网段)
![]()
2.如果pc机和目标板的连接良好,就会出现Connected to 192.168.1.230的字样。(不会停留很长时间,如果等了半天没反应,就说明没连上,有可能ip不在同一网段,不过有时重启一下目标板就会解决或则个问题)。根据提示依次输入用户名plg,和密码plg。如下:
![]() 3.ftp>后面输入bin将改变传输模式为binary。如下:
![]()
4.现在可以用put hello命令将hello文件上传至开发板上面了。上传完后,如下:
![]() 5.输入by退出ftp ![]() 6.用minicom登陆开发板,切换到/home/plg目录下 ![]() 7.输入./hello即可运行之,运行结果如下。 ![]()
8.在等待了几千年之后,我们盼望的画面终于出现了!!!!! 激动不已!
9.在编译hello.c源文件的时候,应注意一下问题: 己编写的程序在文件系统上运行必须采用静态编 译,否则会报诸如:bin/sh: hello :not found的错误 。 静态编译如: arm-linux-gcc –static hello.c –o hello 在开发板上直接./hello,便会有你要的惊喜~~~
kermit的安装与使用
1、先到http://www.columbia.edu/kermit/ck80.html#download来下载C-Kermit。如果你下载的是cku211.tar.gz的话,执行: gunzip cku211.tar.gz tar xvf cku211.tar rm -rf cku211.tar make linux mv wermit /usr/local/bin/kermit 执行以上命令,就可以在终端上输入kermit就可运行了。 2. kermit脚本设置: # vi ~/.kermrc set line /dev/ttyS0 保存后退出即可。然后启动kermit,你会看到: # kermit 出现以上提示,则说明串口已经打开。 切换:按下Ctrl + \ ,再按c 就跳回kermit。跳回串口控制,可以输入c,即connect命令 发送文件: kermit中输入connect后,跳到u-boot串口界面。 输入loadb 0x0c008000 回车 按下 ctrl + \ ,再按c,切换到kermit。 输入命令:send /home/zImage kermit开始传送数据了,并可以看到传送进度,发送完后,输入c,再回到u-boot界面,然后,再输入:go 0x0c008000 内核开始运行了 kermit在启动时会查找~/.kermrc文件,调用里面的命令来初始化kermit。只要将你所需的命令写到~/.kermrc文件里,启动后就不这么麻烦了
|