0

如何打印ncurses库的版本?我使用Curses来自Perl. 我不太关心 CTAN 包的版本,据我了解,它只是访问 curses 库的接口。

我从这里下载了最新(不稳定)版本:http ncurses: //invisible-island.net/datafiles/current/ncurses.tar.gz

我编译它没有错误(只用./configureand make)但还没有完成sudo make install

我想知道如何(1)检查安装了哪个版本的 curses 并最终(2)在版本之间切换。

请注意,我使用的是 Ubuntu 13.04。也许以下信息会有所帮助:

$ locate ncurses.h
/usr/include/ncurses.h
$ locate curses.h
/usr/include/curses.h
/usr/include/ncurses.h
/usr/include/python2.7/py_curses.h
$ 
4

2 回答 2

2

您的系统上有ncurses5-config(或ncurses-config,ncurses4-config等...)吗?例如,我可以在我的 CentOS 6 系统上执行此操作:

$ ncurses5-config --version
5.7.20090207

你也可以从 perl 调用:

my $ncurses_version = qx(ncurses5-config --version);

如果您使用不同的主要版本,您可能需要尝试几个ncurses*-config命令,例如:

my $nc_version;
for my $nc (qw'ncurses-config ncurses5-config ncurses4-config') {
  no warnings 'exec';
  $nc_version = qx($nc --version) and last;
}
print "nc_version=$nc_version\n";

希望这对你有帮助,克里斯蒂安

于 2013-08-07T08:46:49.217 回答
2

似乎确实没有Curses.pm获取当前 (n)curses 版本的功能。您可以编写一个小型 C 程序来获取该值:

/* compile with "cc -lcurses filename.c" */
#include <curses.h>
main() {
  printf("%s\n", curses_version());
}

在我的系统上打印ncurses 5.7.20100313.

但是如果还可以使用 curses_version() 函数也很好Curses.pm——也许问问 Curses.pm 的作者?

于 2013-08-07T08:48:04.897 回答