目标交叉编译ncurses静态库为嵌入式应用提供文本界面功能。编译准备操作系统Ubuntu 18.04 LTS交叉编译工具arm-linux-gnueabincurses源码Stable release source2026年6月30日 最新版本是6.6其他版本历史版本列表编译流程解压缩源码tar-xvfncurses.tar.gzcdncurses-6.6configure配置编译特性./configure--prefix$(pwd)/install--hostarm-linux-gnueabi --without-cxx-binding --without-manpages --without-progs --without-tests --without-develop --without-debug --disable-widec --disable-ext-funcs配置参数参考源码中的INSTALL文件:–prefix指定安装路径–host指定交叉工具链–without-{cxx-binding,manpages,progs,tests,develop,debug}不编译cxx例程、手册、工具、测试和开发调试功能–disable-widec不支持宽字符–disable-ext-funcs取消拓展功能(许多应用程序htop需要用到ext-funcs不建议disable此处是为了make install安装时不使用tic)编译生成makemakeinstall安装时会使用tic工具将misc/terminfo.src生成terminfo文件夹信息。如果tic不存在或者与源码版本不同导致安装失败。terminfo是各种终端信息配置只在运行时查找。可以使用本地的/usr/share/terminfo代替。使用测试编译源码自带的测试程序测试arm-linux-gnueabi-gcc-oworm test/worm.c -I./install/include/ -L./install/lib/ -I./test -I./include-lncurses将测试程序wrom和终端信息文件 拷贝到目标板子上terminfo可以按需拷贝使用终端工具模拟xterm终端并通过串口或者ssh连接目标板串口连接设备需要检查配置的环境变量运行测试程序./worm总结ncurses是个文本终端库适配了大部分的文本终端对外提供统一的控制接口屏蔽了文本终端的差异。各种文本终端的信息可以查看bitsavers网站收录的设备信息。下面是一个vt100终端的图片学习使用ncurses接口可以使用参考书籍《Dan Gookins Guide to Ncurses Programming》