最近因信创换成了UOS,学习Linux,遇到问题
#include <stdlib.h>
#include <stdio.h>
#include <curses.h>
#include <term.h>
int main()
{
int nrows,ncolumns;
setupterm(NULL,fileno(stdout),(int *)0);
nrows=tigetnum(“lines”);
ncolumns=tigetnum(“cols”);
printf(“This terminal has %d columns and %d row\n”);
exit(0);
}
编译 gcc -o testterm testterm.c
提示缺少 <curses.h>和<term.h>,经检查/usr/include,确实没有这两个库,于是进行安装libncurses-dev
sudo apt-get install libncurses5-dev
请输入密码:
验证成功
正在读取软件包列表… 完成
正在分析软件包的依赖关系树
正在读取状态信息… 完成
将会同时安装下列软件:
libncurses-dev
…
完成后,重新编译,提示新的错误
undefined reference to setupterm' undefined reference to
tigetnum’
…
collect2: error: ld returned 1 exit status
因为不是标准库,需要修改编译命令,加-l,即
gcc -o testterm testterm.c -lcurses
编译成功,并执行成功
供参考