续前文,讲一讲老环境下的软件编译的一些坑,这次是ncurses-6.0(一个terminal库)。
这个编译,关键是要看帮助文档。
要点如下:
1,编译ncurses-6.0,需要先编译libgnurx 2.5,下载链接如下:
ftp.gnome.org/pub/GNOME/binaries/win32/dependencies/libgnurx-src-2.5.zip
这个编译没什么问题,configure时加上 CC=”gcc”。
2,编译ncurses-6.0前,要设置环境变量如下(记得编译完了改回去,否则就悲剧了):
export PATH_SEPARATOR=";"
另外,6.0还有个20170930的补丁,可以自己考虑是否加上。
加上20170930的patch后,在make时会出现如下错误:
../progs/tput.c:114:50: error: 'PROG_CLEAR' undeclared (first use in this function)
是tput.c修改了,但是makefile.in没改,需要统一一下。
然后,编辑脚本myconfig.sh如下:
./configure \
--prefix=/usr \
--with-cxx \
--without-ada \
--enable-warnings \
--enable-assertions \
--disable-home-terminfo \
--enable-database \
--enable-sp-funcs \
--enable-term-driver \
--enable-interop \
--disable-termcap \
--with-progs \
--with-libtool \
--enable-pc-files \
--mandir=/usr/share/man
./myconfig.sh
make
很漫长。最后虽然编译并安装完成,但是缺少form,menu,panel的静态库。