ncurese全称是new curses,是curses的升级版,比curses更好用。
ncursesw是ncurses的升级版,支持utf8字符集,也就是说它支持中文了。在ncurses中,中文会出现乱码的情况。
采用默认参数编译ncurses-6.5.tar.gz,最终得到的是libncursesw.so。
作者共發了5篇帖子。
![]() |
ncurese全称是new curses,是curses的升级版,比curses更好用。 ncursesw是ncurses的升级版,支持utf8字符集,也就是说它支持中文了。在ncurses中,中文会出现乱码的情况。 采用默认参数编译ncurses-6.5.tar.gz,最终得到的是libncursesw.so。 |
![]() |
编译得到的所有的库文件都以w结尾。
![]() |
![]() |
The ncurses and ncursesw libraries are reasonably source-compatible. That is, an application written for “ncurses” will build with “ncursesw”. But it will behave differently in response to your locale settings. (Some distributors, who do not care about the differences, have chosen to merge the names together as “ncurses”). |
![]() |
ncurses-6.5默认编译出来的是libncursesw.so。 configure的时候要加--disable-widec选项,才能编译出不带后缀w的libncurses.so。 |
![]() |
export PATH=$PATH:/home/oct1158/Downloads/arm-gnu-toolchain-14.2.rel1-x86_64-arm-none-linux-gnueabihf/bin
【在电脑上交叉编译ncurses6.5】 [步骤1: 编译带后缀w的libncursesw.so库] cd ~/Downloads wget https://ftp.gnu.org/gnu/ncurses/ncurses-6.5.tar.gz tar xf ncurses-6.5.tar.gz cd ncurses-6.5 ./configure --host=arm-none-linux-gnueabihf --with-shared make 修改progs/Makefile文件里面第82行的INSTALL_PROG变量,在变量值的末尾添加 --strip-program=arm-none-linux-gnueabihf-strip 然后make install DESTDIR=$(pwd)/_installw [步骤2: 编译不带后缀w的libncurses.so库] make distclean ./configure --host=arm-none-linux-gnueabihf --with-shared --disable-widec make 再修改一次progs/Makefile文件里面第82行的INSTALL_PROG变量,在变量值的末尾添加 --strip-program=arm-none-linux-gnueabihf-strip 然后make install DESTDIR=$(pwd)/_install [步骤3:将libncurses库的安装文件与libncursesw混合, 同名文件用libncurses覆盖(注意是用ncurses覆盖ncursesw,不要搞反了)] mkdir _installw/usr/include/ncursesw mv _installw/usr/include/*.h _installw/usr/include/ncursesw mkdir _install/usr/include/ncurses cd _install/usr/include/ncurses for name in $(ls ../*.h) do ln -s $name . done cd ../../../.. cp -r _install/* _installw rm -rf _install cd _installw sudo chown -R root:root usr tar czf ncurses-6.5-binary.tar.gz usr mv ncurses-6.5-binary.tar.gz /var/www/html/oct1158 |