首页 > 代码库 > rlwrap安装报错You need the GNU readline 解决方法

rlwrap安装报错You need the GNU readline 解决方法

首先大家肯定知道rlwrap是干什么的?
在linux以及unix中,sqlplus的上下左右、回退无法使用,会出现乱码情况。而rlwrap这个软件就是用来解决这个的。
 
这个错误曾经困扰我很久很久!下载readline 
安装,安装好readline 还是无法运行rlwrap的安装程序
在网上搜寻很久才找到一个靠谱的解决方法
 
原来rlwrap这个程序的安装,需要依赖两个包,
一个是readline,这个readline在RHEL中已经集成了。不需要去专门下载
另外一个包 libtermcap-devel
 
而我之前一直是光安装readline,少了libtermcap-devel这个包!所以安装不成功
 
解决方法:
 
挂载系统光盘,例如
mount /dev/cdrom /media/cdrom
cd /media/cdrom/Server
rpm -ivh readline* libtermcap-devel*
 
安装完成后回到rlwrap的安装程序去安装就可以了!
 

按照下面的步骤可以设置

1,从http://download.csdn.net/user/kkdelta下载 rlwrap

2,安装rlwrap

  1. [root@localhost]# tar -zxvf rlwrap-0.30.tar.gz  
  2. [root@localhost]# cd rlwrap-0.30  
  3. [root@localhost rlwrap-0.30]# ./configure  
  4. [root@localhost rlwrap-0.30]# make  
  5. [root@localhost rlwrap-0.30]# make install  
  6. [root@localhost rlwrap-0.30]# rlwrap  

3,使用rlwrap,rlwrap sqlplus / as sysdba

这时候,熟悉的上下键功能有回来了。

4,设置别名,让sqlplus默认在rlwrap方式下运行。

[root@localhost rlwrap-0.30]# vi /home/oracle/.bash_profile
添加下面的内容
alias sqlplus=‘rlwrap sqlplus‘
alias定义中使用的是单引号,而不是TAB上面的那个,/home/oracle/是oracle用户的主目录。

上面的设置需要Oracle用户重新登录,

如果上面的设置不起作用的话,可以设置在/home/oracle/.bashrc中,这样每次改变到bash的时候都会设置alias。

用type sqlplus验证,如果显示下面的信息证明alias设置成功。

sqlplus is aliased to ‘rlwrap sqlplus’

 

rlwrap

rlwrap is a wrapper that uses the GNU readline library to allow the editing of keyboard input for any other command. Input history is kept between invocations, separately for each command; history completion and search work as in bash and completion word lists can be specified on the command line.