文章参考:
https://blog.csdn.net/weixin_40123831/article/details/82490687
https://www.cnblogs.com/kokoer-wu/p/5289843.html
ncurses库是一个Linux系统下的图形支持的函数库,字符终端处理库,包括面板和菜单。在虚拟机上成功安装ncurses库的过程如下:
1、下载ncurses库源码压缩包
官网下载地址:http://ftp.gnu.org/pub/gnu/ncurses/ 这里选用的是ncurses-6.0版本
2、将ncurses压缩包复制到主目录的bin文件夹下
cp ncurses-6.0.tar.gz /bin/
3、进入到主目录的/bin目录下,解压压缩包
cd /bin
sudo tar -xzvf ncurses-6.0.tar.gz
4、进入ncurses-6.0目录
cd ncurses-6.0
5、配置
配置方式:
sudo ./configure --without-cxx
make编译就可以通过
6、make编译
sudo make
--------------------------------------------------------------------------------------------
---------------------------------------------------------------------------------------------
但是,源码编译有错误!!!!
错误如下:
gcc -DHAVE_CONFIG_H -I. -I../include -D_GNU_SOURCE -DNDEBUG -O2 --param max-inline-insns-single=1200 -c ../ncurses/lib_gen.c -o ../objects/lib_gen.o
In file included from ./curses.priv.h:325:0,
from ../ncurses/lib_gen.c:19:
_18018.c:843:15: error: expected ‘)’ before ‘int’
../include/curses.h:1631:56: note: in definition of macro ‘mouse_trafo’
#define mouse_trafo(y,x,to_screen) wmouse_trafo(stdscr,y,x,to_screen)
^
Makefile:967: recipe for target '../objects/lib_gen.o' failed
make[1]: *** [../objects/lib_gen.o] Error 1
make[1]: Leaving directory '/home/abuu/project/ncurses-6.0/ncurses'
Makefile:113: recipe for target 'all' failed
make: *** [all] Error 2
修改方案:
sudo vim include/curses.h
打开,搜索mouse_trafo所在行的代码,如下
将1621行,/* generated */ 删除, 保存退出
重新执行
make
7、安装
make install
到此就安装完毕。