mini2440 ubuntu 11.10开发环境的建立

今天终于将系统安装好了。接下来是建立开发环境的时候了,毕竟新装这个系统就是为了开发嘛。。话说今天是情人节,人品超好,好几天解决不了的问题今天小小就被我搞定了,真希望天天都是情人节。
1:超级终端
 

一、安装minicom

 

使用以下命令:# sudo apt-get install minicom

通过串口用xmodem协议烧写内核 时会提示没有xmodem协议,所以这时就要安装lrzsz软件包了:
# sudo apt-get install lrzsz
然后就可以正常地使用minicom通过串口烧写内核了。

二、配置minicom

1、在使用minicom之前,首先要保证你对串口有读/写的权限。我们知道,Linux的设备对应于/dev/目录中的某个文件,串口COM1对应ttyS0COM2对应ttyS1,使用以下命令来查看你对COM1的权限:
$ ls -l /dev/ttyS0
crw-rw---- 1 root dialout 4, 64 2009-08-01 11:05 /dev/ttyS0
可以看到,它的属主是root

2运行# sudo minicom -s

选择Serial port setup,此时所示光标在"Change which setting"上,键入"A",此时光标移到第A项对应处:串口COM1对应ttyUSB0COM2对应ttyUSB1(注意选择)。

然后对波特率,数据位和停止位进行配置,键入"E",波特率选为115200 8N1(数据位8,奇偶校验无,停止位1),硬/软件流控制分别键入"F""G",并且都选No。在确认配置正确之后,可键入回车返回上级配置界面,并 将其保存为默认配置(即save setup as dfl)。最后,选择"Exit from Minicom"命令退出。

注意:如果没有使用USB转串口,而是直接使用串口,那么Serial Device要配置为/dev/ttyS0

然后重启minicom(即直接在shell下执行minicom命令就可以进入minicom的控制台)使刚才的配置生效,再连上开发板的串口线后,就可以在minicom中打印出正确的串口信息了。在控制台下通过组合键Ctrl+A Z可以进入minicom菜单。

组合键的用法是:先按Ctrl+A组合键,然后松开这两个键,再按Z键。另外还有一些常用的组合键。
1S键:发送文件到目标系统中;
2W键:自动卷屏。当显示的内容超过一行之后,自动将后面的内容换行。这个功能在查看内核的启动信息时很有用。
3C键:清除屏幕的显示内容;
4B键:浏览minicom的历史显示;
5X键:退出mInicom,会提示确认退出。

3、配置文件所在目录
Ctrl + A --> O
+-----[configuration]------+
| Filenames and paths |
| File transfer protocols -|
| Serial port setup |
| Modem and dialing |
| Screen and keyboard |
| Save setup as dfl |
| Save setup as.. |
| Exit |
+--------------------------+

选择"Filenames and paths"
+-----------------------------------------------------------------------+
| A - Download directory : /home/crliu |
| B - Upload directory : /tmp |
| C - Script directory : |
| D - Script program : runscript |
| E - Kermit program : |
| F - Logging options |
| |
| Change which setting? |
+-----------------------------------------------------------------------+

1A - download 下载文件的存放位置(开发板 ---> PC
开发板上的文件将被传输到PC机上的/home/crliu目录下。
2B - upload 从此处读取上传的文件(PC ---> 开发板)
PC机向开发板发送文件,需要发送的文件在/tmp目录下(PC机上的目录)。做了此项配置后,每次向开发板发送文件时,只需输入文件名即可,无需输入文件所在目录的绝对路径。

三、Linux下如何使用USB转串口设备

对没有串口的笔记本持有者来说,做硬件开发经常为没有串口而烦恼,不过现在有了USB转串口设备。但是新的问题又出现了,比如说对于Minicom下的PC机和目标机通信还是存在着一些配置问题,下面就说一下linuxUSB转串口的具体配置和问题:

注意:默认情况下ubuntu已经安装了USB转串口驱动(pl2303)

1# lsmod | grep usbserial
如果有usbserial,说明系统支持USB转串口。

2、插上USB转串口,在终端输入命令#dmesg | grep ttyUSB0,如果出现连接成功信息,则说明ubuntu系统已经识别该设备了。

注意:虚拟机环境下的ubuntu默认情况下是不能自动识别的,需要在虚拟机窗口右下角点击"Prolific USB-Serial Controller",然后选择"Connect (Disconnect from Host)",这样才能被ubuntu系统识别。

3、在上面minicom的配置中设置Serial Device: /dev/ttyUSB0,重启开发板,这样基本上就可以正常使用minicom来打印串口信息了。

4、问题
如果经过上面的步骤minicom还是不能正常工作,出现如下错误提示:
# sudo minicom
minicom: cannot open /dev/ttyUSB0: 没有该文件或目录

这时可以尝试换一个USB口,然后再次操作以上流程。如果还是提示这个错误,那么可以使用下面的方法来解决。

这种方法是在硬件里添加串口设备,将window下的设备添加到虚拟机里。也就是说,要在window获得焦点的时 候加入usb转串口,然后再到虚拟机下将这个设备添加进去,这时就可以在ubuntu下查看添加的这个设备的设备文件,一般是/dev/tty0或者 /dev/ttyS0

这种方法其实是将windowusb转串口作为虚拟机的串口,所以就是tty0或者ttyS0了,而不是真正在ubuntu下加载的。

具体步骤如下:
1)打开虚拟机环境,然后选择"VM-->Settings(Ctrl+D)"

2)点"Add",进入添加硬件向导,选择"Serial Port",点"Next"

3)选择第一项"Use physical port on the host",点"Next"

4)选择"Physical serial port"方式为"Auto detect",勾选"Connect at power on",点"Finish"完成。

(5)然后在上面minicom的配置中设置Serial Device: /dev/tty0或者Serial Device: /dev/ttyS0,重启开发板,这样就可以正常运行minicom

2.dnw下载程序的问题。

1.安装编译好的执行档
执行档文件 dnw2_0.0.20090411-1_i386.deb.bz2 (6 K)

使用方法:
下载附件后,解压得到dnw2_0.0.20090411-1_i386.deb, 用命令 (需要root权限)
$dpkg -i /path/to/dnw2_0.0.20090411-1_i386.deb
安装。安装后,在/usr/sbin下有dnw2执行文件。使用说明在/usr/share/doc/dnw2/README
  3
.jlink的问题。
之前网上很多人说jlink只能用在windows下,自己买板子的时候那个卖家甚至也是这么对我说的。
  幸亏我一次在 帖子“请教JLINK V7支持Linux下用openOCD吗(http://www.ourdev.cn/bbs /bbs_content.jsp?bbs_sn=3263282&bbs_page_no=1&search_mode=4& search_text=crifan&bbs_id=9999)?”里看到 网友 jordonwu的话 ,顺着他的话,找到了 segger 网站(http://www.segger.com/cms/jlink-software.html ),其中Beta software version for Linux 是也!
我在ubuntu下试了下,用起来除了jlnkGDBserver是command界面,其他和 windows版的无异。

发生的问题:按照README的步骤,还是要装libusb,之前dnw安装的时候没装看来还是躲不掉的,欠债总归要还得。没办法下了 源代码进行编译。一路成功,但是运行的时候发生了 如下错误:
./JLinkExe: error while loading shared libraries: libjlinkarm.so.0: cannot open shared object file: No such file or directory。
我一开始以为是 动态加载库没有进去的关系,所以把当前路径也加到 了LD_LIBRARY_PATH这个变量中去,发现还是不行。(参考:
http://blog.csdn.net/wwwsq/archive/2006/09/21/1256577.aspx [Linux] 如何让linux加载当前目录的动态库)
因为原来提供的文件 里没有 libjlinkarm.so.0,倒是有 libjlinkarm.so.0.0. 又怀疑是 要做个软连接libjlinkarm.so.0,好像还是不行。
最后网上查了查,按照
http://www.segger2.com/index.php?page=Thread&postID=1032 帖子里的说法,把后者改名为前者就ok了。 这个网址也是讲这个问题:http://www.droidream.com/

4.看代码的问题。
windows 上有source insight 。好用啊。最近发现linux也有这样的工具---KScope,简直就是linux上的source insight 。它用的也是基于Cscope引擎来做的,但比同样基于它的chrowser好用很多,要么是我不会用的关系。KScope的用法就不说了,因为和 source insight是一样的。
安装的时候倒是出现了如下错误:
kscope: error while loading shared libraries: libkateinterfaces.so.0: cannot open shared object file: No such file or directory。
怎么办,还是放狗。呵呵。
http://packages.debian.org/lenny/i386/kate/download下载kate_3.5.9.dfsg.1-6_i386.deb。
然后:
$ar x kate_3.5.9.dfsg.1-6_i386.deb
$tar xzf data.tar.gz
$cp usr/lib/libkateinterfaces.so.0.0.0 /usr/local/lib/libkateinterfaces.so.0
$cp usr/lib/libkateutils.so.0 /usr/local/lib/libkateutils.so.0
$ldconfig

 

5:打开vi编辑器时

 vi键往上下变成A B,

在终端输入命令:Sudo apt-get install vim安装完即搞定。

6、安装NFS服务
       
由于在安装系统时我们没有定制,因此我们需要自己来安装NFS服务,别担心,只要你的网络是通的,安装过程很简单,因为Ubuntu支持软件的在线安装。菜单命令如下系统->系统管理->新立得软件包管理器。
        
然后在搜索栏中输入nfs,可以在列表中看到四五个需要安装的相关文件,标记这些文件,点击工具栏的应用,就可以看到系统在自动下载软件包并安装了。你一定会喜欢这种安装方式,你从此不必担忧安装软件时缺少相关的安装包了。
          
安装好nfs之后需要启动nfs服务,命令如下:
/etc/init.d/nfs-kernel-serverstart
7、makemenuconfig出错的问题解决。
          
在我使用默认配置编译内核时,敲入makemenuconfig命令时出现了一下问题。
root@nyb-desktop:/opt/FriendlyARM/mini2440/linux-2.6.29#make menuconfig
*** Unable to find the ncurses libraries orthe
 *** required header files.
 *** 'makemenuconfig' requires the ncurses libraries.
 ***
 ***Install ncurses (ncurses-devel) and try again.
 ***
make[1]:*** [scripts/kconfig/dochecklxdialog]
错误1
make:*** [menuconfig]
错误2

         我参看王本春的笔记解决了这个问题(原文链接http://student.csdn.net/space.php?uid=236492&do=blog&id=20605),执行以下安装命令就可以了(你需要保证网络是连通的)
sudoapt-get install libncurses5-dev
root用户可以不用加sudo)。


转自:http://blog.chinaunix.net/uid-26696487-id-3073059.html


你可能感兴趣的:(mini2440 ubuntu 11.10开发环境的建立)