zoukankan      html  css  js  c++  java
  • sqlite3 shell方向键、浏览历史命令不能用的问题

    在sqlite3 shell下,按上下方向键可以浏览历史命令,按左右方向键则可以将光标移动到命令中任意字符位置,从而可以修改错误的语句或误敲的字符。所以方向键是sqlite3 shell下最常用的功能。
    在debian(包含ubuntu)下,sqlite3 shell方向键默认是不工作的。
    ​这个问题是有意为之的,原因是:命令行编辑特性是有外部依赖的,sqlite3二进制包的维护者不对可用的外部库作假定,默认不去引用这些外部库,否则,二进制包可能是不可用的。
    命令行编辑特性依赖的外部库是readline,在debian/ubuntu下,通常readline库默认是已经安装的(比如我的ubuntu 11.10桌面版默认已经安装了这三个包readline-common, libreadline5, libreadline6),但sqlite3在编译阶段需要检测readline的头文件,所以还得安装dev包: 
     
    sudo apt-get install libreadline6-dev libreadline-dev
     
    坑爹的是,我用的网易源中没有readline的dev包,google之,在这里找到11.10对应的.deb格式的包:
     
     
    dpkg -i libreadline-dev_6.2-2ubuntu1_i386.deb
    dpkg -i libreadline6-dev_6.2-2ubuntu1_i386.deb
     
    下载与11.10所用版本的sqlite3源码(3.7.7),重新编译、安装,进入sqlite3 shell,发现问题已解决。Enjoy it!
  • 相关阅读:
    hdu5249
    hdu5673-Robot
    hihoCoder 1033
    simpleOS 1.0
    hdu3511-Prison Break
    单调栈
    关于每次取PC的值为PC+4的问题
    hdu3652
    Linux MySQL5.7.18安装手册
    Linux MySQL5.6.36安装手册
  • 原文地址:https://www.cnblogs.com/lijingcheng/p/4454881.html
Copyright © 2011-2022 走看看