哪个库定义了这些符号:nmgetch kbd_again initkbd resetkbd

时间:2011-12-17 15:41:22

标签: linker cygwin symbols

我正在尝试编译sc的版本7.16,ncurses电子表格计算器,用于cygwin。由于未定义的引用,编译失败: nmgetch kbd_again initkbd resetkbd 。谷歌搜索,并使用apt-get-installed sc 来点击Ubuntu机器,让我无处可去。有人认出这些名字吗?

2 个答案:

答案 0 :(得分:1)

事实上,我能够编译并获得箭头键, 放入Makefile的正确CFLASG是:

CFLAGS=-DSYSV3 -I/usr/include/ncurses/

您无需更改SIMPLE=变量(您可以将其保留在Makefile中)

如果您保留-O2-pipe标记,那么您的SC将无法正常工作(它将不会处理编辑选项 - 语法错误)

答案 1 :(得分:0)

这些功能在 sc 中定义。他们需要构建 sc ,但默认情况下未定义。如果定义了C预处理器宏SIMPLE,则启用这些函数的“简单”实现。所以调用make如下,让它找到cygwin的curses.h:

make CFLAGS=-I/usr/include/ncurses SIMPLE=-DSIMPLE

但现在箭头键不会移动光标。