本文主要是介绍Ubuntu12.04下kermit的安装与使用(VMware+USB转串口),以及openssl-1.0.0e的安装,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
新手还是嫩啊,这个东西花费了我很长时间,不过最后搞出来了,值了。网上很多人说Linux下minicom不好用,推荐kermit。我的目的是想在VMware里面的Ubuntu12.04上面安装kermit,用USB转串口线连接开发板。参考网上的说法,下面总结一下我遇到的问题和解决方法。
1、安装串口工具
sudo apt-get install ckermit
2、配置相应的kermrc文件
在用户宿主目录下(/home/用户名/)创建一个名为“.kermrc”的配置文件。网上说是如果没有找到~/.kermrc这个文件时,才启动/etc/kermit/kermrc这个配置文件,由此,应该配置用户下的~/.kermrc的配置文件。
sudo vim ~/.kermrc
添加如下内容:
set line /dev/ttyUSB0 //网上说如果是串口就是ttyS0,这里我的做法不一样,在下面内容里有说明
set speed 115200
set carrier-watch off
set handshake none
set flow-control none
robust
set parity none
set stop-bits 1
set file type bin
set file name lit
set rec pack 1000
set send pack 1000 //如果需要下载内核等大文件,这里可以改大一点
set window 5
网上说Ubuntu下默认是安装了U转串驱动的(PL2303),不需要自己重装。 设置虚拟机,在VMware中添加串口支持后,我用$ lsmod |grep usbserial和$dmesg | grep ttyUSB0查看,没有找到。 使用命令$sudo apt-get install setserial安装后仍然查看不到,而且/dev/下没有ttyUSB*。网上有说查看驱动为ttyUSB*分配的主次设备号,知道了主次设备号,然后用mknod创建即可。但是我安装之后已没有找到驱动,所以没有试这种方法,也不知道是什么原因找不到USB转串口的驱动,如果有人使用这种方法,可以分享一下。
3、设置虚拟机VMware,使用USB转串口设备(其实这一步也可以在安装kermit前设置好)
要先关闭虚拟机中的ubuntu,关闭后点击编辑虚拟机--添加硬件--选择串口:
然后点击下一步直至完成,确定。
开启虚拟机,我们会发现在虚拟机的最下面的工具栏上发现,多了一个按钮
我们点击这个按钮,选择“连接”,并打开“设置”,检查设置的是否正确
可以通过PC机上的设备管理器查看USB转串口连在哪个COM上,我的是COM4,连接在虚拟机的串行端口2(如上图),将此记下。
4、再次配置相应的kermrc文件
将~/kermrc的第一行改成set line /dev/ttyS1
如果是USB转串口(包括Expresscard转串口)也设置成set line /dev/ttyS*(不要设置成默认的set line /dev/ttyUSB*),把虚拟机的USB-serial controler改为disconnect,把serial改为connect。 上图里的串行端口1 对应ttyS0,串行端口2 对应ttyS1,以此类推。我的是串行端口2。
5、启动kermit
sudo kermit
提示说C-kermit需要openssl 1.0.0e,而发现系统上的是openssl 1.0.1(后来费了半天劲终于发现这个问题可以忽略,下面内容有说明)
在C-Kermit>输入connect或者c就可以连接上啦(前提是把开发板,电源线,USB转串口线连接好了)。
异常情况:当你启动kermit,连接时出现 Sorry, you must SET LINE or SET HOST first ,解决办法:
a、用sudo管理员权限启动,检查配置文件是否正确。
b、虚拟机串口是否设置连接好
c、sudo chmod 777 /dev/ttyS1(跟你的匹配)
d、开发板复位
kermit的使用方法就不说了,网上很多。下面说一下openssl的事情,在我首次安装kermit,启动后出现下面的情况:
众多问题出现在一起,首先提示说C-kermit需要openssl 1.0.0e,而发现系统上的是openssl 1.0.1,然后disable、sorry出现在一起,反正就是连不上。就从网上找,有说要安装openssl 1.0.0e,于是我就找这个包,很旧的包,首先openssl的官网上面没有找到这个version的,然后在网上找到一个openssl-1.0.0e.tar.gz(不知道官网怎么没有,这个是不是个人编译的呢),就安装这个包,安装过程中一个小错误还让我重新装了一次系统,哎,下面分享一下我安装openssl 1.0.0e的方法。
openssl是为网络通信提供安全及数据完整性的一种安全协议,囊括了主要的密码算法、常用的密钥和证书封装管理功能以及SSL协议,并提供了丰富的应用程序供测试或其它目的使用。
以下使用root用户
1、解压
#tar zxvf openssl-1.0.0e.tar.gz
2、编译安装
进入到解压的目录
#cd openssl-1.0.0
# ./config –prefix=/usr/local/openssl
# make //时间有点长
# make test
# make install
# cd /usr/local
# ln -s openssl ssl
在/etc/ld.so.conf文件的最后面,添加如下内容:/usr/local/openssl/lib
# ldconfig
3、添加OPENSSL的环境变量:
第一次安装openssl时,这里忘了加 “$”,导致
Command 'vi' is available in '/usr/bin/vi'
The command could not be located because '/usr/bin' is not included in the PATH environment variable.
还有一些简单的命令也没办法用,网上说是PATH路径没有了,要添加,我添加了一些,但是还是有些命令不能用,最后就装系统了。
4、安装完毕,下面进行检查
# cd /usr/local
#ldd /usr/local/openssl/bin/openssl
出现如下信息:
查看路径
# which openssl
/usr/local/openssl/bin/openssl
#openssl version
可以看到,是openssl 1.0.1 ,而不是openssl 1.0.0e,我也纳闷了,为什么,难道是安装包的问题,哎,不管了,跳过这个问题,然后把kermit弄好了,现在kermit也能用,每次启动kermit,还会出现这个openssl version的问题,如上面的启动图片显示。也不知道是为什么kermit还能用,求解。
这篇关于Ubuntu12.04下kermit的安装与使用(VMware+USB转串口),以及openssl-1.0.0e的安装的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!