作者共发了5篇帖子。 字体大小:较小 - 100% (默认)▼  内容转换:不转换▼
 
点击 回复
235 4
关于curses、ncurses、ncursesw区别
一派掌门 二十级
1楼 发表于:2025-6-26 18:28

ncurese全称是new curses,是curses的升级版,比curses更好用。

ncursesw是ncurses的升级版,支持utf8字符集,也就是说它支持中文了。在ncurses中,中文会出现乱码的情况。

采用默认参数编译ncurses-6.5.tar.gz,最终得到的是libncursesw.so。

一派掌门 二十级
2楼 发表于:2025-6-26 18:29
编译得到的所有的库文件都以w结尾。
 
一派掌门 二十级
3楼 发表于:2025-7-24 10:19

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”).

http://invisible-island.net/ncurses/ncurses.faq.html

 
一派掌门 二十级
4楼 发表于:2025-7-31 09:54

ncurses-6.5默认编译出来的是libncursesw.so。

configure的时候要加--disable-widec选项,才能编译出不带后缀w的libncurses.so。

 
一派掌门 二十级
5楼 发表于:2025-7-31 18:41
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

 

回复帖子

内容:
用户名: 您目前是匿名发表
验证码:
(快捷键:Ctrl+Enter)
 

本帖信息

点击数:235 回复数:4
评论数: ?
作者:巨大八爪鱼
最后回复:巨大八爪鱼
最后回复时间:2025-7-31 18:41
 
©2010-2025 Purasbar Ver2.0
除非另有声明,本站采用知识共享署名-相同方式共享 3.0 Unported许可协议进行许可。