【问题标题】:ncurses library compile errorncurses库编译错误
【发布时间】:2012-05-02 14:17:03
【问题描述】:

我在这个网站上查看了类似的问题,并用谷歌搜索了为什么会发生这种情况,但尝试了这些解决方案not able to compiledifference between ncurses and cursesanother 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;
}

如果您能指出我错过了什么或做错了什么,我将不胜感激。

【问题讨论】:

    标签: c compiler-errors ncurses


    【解决方案1】:

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

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

    如果您使用 gcc,则需要将 -lcurses-lncurses 添加到编译器命令行(您的源文件名之后)。

    例如,在我的系统上,我将您的源代码复制到了c.c,然后我可以使用任一方法编译和链接它

    gcc c.c -o c -lcurses
    

    gcc c.c -o c -lncurses
    

    【讨论】:

    • 谢谢大家。现在该程序无法正常工作,但我可以修复大声笑
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多