unbutu环境下quagga路由软件下的安装 问题解决

1:ubuntu 12.04

2:quagga 0.99.18

安装的出现的问题以及解决办法!

1:./configure --prefix=/usr

                --sysconfdir=/etc/quagga
                --localstatedir=/var/run/quagga
                --enable-vtysh
                --enable-user='test'
                --enable-group='test'
                 --enable-vty-group='test'
的时候出现的错误: configure: error: vtysh needs libreadline but was not found and usable on your system
出现这个错误可以按照以下的方式进行解决

1    看readline软件包是否安装

     下载readline的安装包readline-6.0.tar.gz安装

2    是否安装ncurses安装包

这个包的安装命令是:

        apt-cache search ncurses

        apt-get install libncurses5-dev(其实只要这一个应该就可以了)

3    是否安装libncurses5-dev 或libncursesw5-dev软件包

     这一步已经在第二步解决了,如果有必要可以按照前面的命令安装libncursesw5-dev

 

这个时候再去configure应该可以通过了,如果没有通过请继续往下看

2:make的时候出现的问题

/usr/local/lib/libreadline.so: undefined reference to `tputs'

/usr/local/lib/libreadline.so: undefined reference to `tgoto'

/usr/local/lib/libreadline.so: undefined reference to `tgetnum'

/usr/local/lib/libreadline.so: undefined reference to `BC'

/usr/local/lib/libreadline.so: undefined reference to `tgetstr'

如果出现了这样的问题:请看这篇文章http://blog.chinaunix.net/uid-23242876-id-2480272.html

在这里我这直接复制过来了:

编译postgresql 遇到错误 lreadline 未安装,Ubuntu 和 CentOS 均遇到。

在系统上装Postgresql-9.0,编译的时候怎么都过不了 readline 库这一关。经过了解,在帖子
http://abcs007.javaeye.com/blog/587732 readline的作用是使得可以在命令行回滚历史命令,编辑命令。而且bash也是使用的readline的库。

另一方面,postgresql需要的两个选项 --with-lib 和 --with-includes的使用方法在帖子
http://www.linuxtopia.org/online_books/database_guides/Practical_PostgreSQL_database/c12119_004.htm 里指出来是:
--with-includes= [.h file locations] , and
--with-libs=[ lib file location ]

此时,系统里有编译好的libreadline库的so文件,但是没有readline.h 文,使用 find 命令什么也找不到,后来发现使用 .h 文件的话,需要再安装开发包文件。也就是后缀为 -dev 的文件。

这是遇见的问题是,需要安装的 readline 开发包文件的版本,用 ldconfig -p | grep readline,查看可以看到系统同时有两种:

libreadline.so.6 (libc6) => /lib/libreadline.so.6
libreadline.so.5 (libc6) => /lib/libreadline.so.5

使用命令 sudo apt-get install libreadline5-dev 安装其中的一个版本,这之后,在 /usr/lib 目录下出现 readline 文件夹,然后可以使用 --with-lib=/usr/lib --with-includes=/usr/include 来编译posgrresql了。

CentOS-5.4系统下面,开发文件包的后缀名是 -devel,使用命令 yum install readline-devel 安装readline 开发包,之后根据路径使用 --with-lib=/usr/lib 和 --with-includes=/usr/include 选项.

postgresql 提示的是 lreadline ledit 没有安装,而不是 readline,最开始的时候,也不知道需要使用 --with-lib 和 --with-includes 这两个选项,走了许多弯路。还尝试着修改 ./configure 文件,并在失败时根据提示去看 config.log 文件。

 

   如果出现了make的问题

请在你的命令行中直接输入:sudo apt-get install  readline5-dev(realline-dev或者readline6-dev),我也是一个一个试验的,大家试验一下啦,反正我的通过了!!

3:这样之后可以顺了make 和 make install了!

希望大家都顺利通过呀,不会的可以问我加我qq:540692237

 
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值