ncurses库编译错误
Posted
技术标签:
【中文标题】ncurses库编译错误【英文标题】:ncurses library compile error 【发布时间】:2021-12-07 01:53:09 【问题描述】:我在这个网站上查看了类似的问题,并用谷歌搜索了为什么会发生这种情况,但尝试了这些解决方案not able to compile、difference between ncurses and curses、another compile error,但我仍然遇到错误undefined reference to stdscr
和@ 的问题987654325@ 编译器正在查找库,因为我使用find
来定位curses 库并在#include
行中输入完整位置。
我的代码如下
#include <ncurses.h>
#include <stdio.h>
#include <string.h>
int first_line(char);
int main()
char c = 0;
while((c = getch())!=EOF)
first_line(c);
return 0;
int first_line(char c)
if (c != '\n' && c != '\r')
putchar(c);
do
c = getch();
putchar(c);
while( c !='\n');
else return 0;
return 0;
如果您能指出我错过了什么或做错了什么,我将不胜感激。
【问题讨论】:
【参考方案1】:ncurses.h
是头文件(包含声明),而不是库(包含实现这些声明的代码)。
您看到的错误消息来自链接器,而不是编译器。
如果您使用 gcc,则需要将 -lcurses
或 -lncurses
添加到编译器命令行(在您的源文件名之后)。
例如,在我的系统上,我将您的源代码复制到了c.c
,然后我可以使用任一方法编译和链接它
gcc c.c -o c -lcurses
或
gcc c.c -o c -lncurses
【讨论】:
谢谢大家。现在该程序无法正常工作,但我可以修复大声笑以上是关于ncurses库编译错误的主要内容,如果未能解决你的问题,请参考以下文章
错误记录编译 Linux 内核报错 ( Unable to find the ncurses package. )
Linux 内核编译 Linux 内核 ③ ( 安装 ncurses | 安装 flex | 安装 bison | 打开 Linux 内核编译配置菜单 )
linux编译内核make menuconfig报错Unable to find the ncurses libraries解决办法