ncurses库编译错误

问题描述:

我已经看过这个网站类似的问题和一派为什么发生这种情况,但尝试了这些解决方案not able to compiledifference between ncurses and cursesanother compile error,但我仍然有错误undefined reference to stdscrwgetch编译器发现问题图书馆,据我所知,因为我用find来找到curses库并输入#include行中的完整位置。ncurses库编译错误

我的代码如下

#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; 
} 

如果你能指出我已经错过了还是做错了,我会非常感激。

ncurses.h是一个头文件(包含声明),而不是一个库(包含实现这些声明的代码)。

您看到的错误信息来自链接器,而不是编译器。

如果你正在使用gcc,你需要或者-lcurses-lncurses添加到编译器命令行(源文件名)。

例如,我的系统上我复制你的源c.c,我可以编译和使用任何

gcc c.c -o c -lcurses 

gcc c.c -o c -lncurses 
+0

感谢所有好的链接。现在程序不起作用,但我可以修复哈哈 – UNECS 2012-04-21 02:55:40