8wDlpd.png
8wDFp9.png
8wDEOx.png
8wDMfH.png
8wDKte.png

如何在 Windows 上安装 ncurses

user1111 1月前

8 0

如何让 ncurses 在我的 Windows 上运行?我尝试了各种方法让它运行,但我的 gcc 编译器无法识别它,它正确安装在目录 C:\msys64\mingw64\include\ncursesI 中

如何让 ncurses 在我的 Windows 上运行?我尝试了各种方法让它运行,但我的 gcc 编译器无法识别它,它已正确安装在目录 C:\msys64\mingw64\include\ncursesI 中,该目录是通过 MSYS2 安装的。有人能帮助我吗?

我尝试按如下方式编译我的代码:gcc test.c -o test -IC:\msys64\mingw64\includeit 返回了编译器中的错误,我尝试用另一个命令运行它:gcc test.c -o test -IC:\msys64\mingw64\include -LC:\msys64\mingw64\lib -lncurses它也不起作用,我不知道该怎么办。

具体错误:test.c:1:10: 致命错误:ncurses.h: 没有这样的文件或目录1 | #include | ^~~~~~~~~~~编译终止。我正在使用 vscode,但即使在 Windows 终端也出现了同样的问题。

帖子版权声明 1、本帖标题:如何在 Windows 上安装 ncurses
    本站网址:http://xjnalaquan.com/
2、本网站的资源部分来源于网络,如有侵权,请联系站长进行删除处理。
3、会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。
4、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
5、站长邮箱:yeweds@126.com 除非注明,本帖由user1111在本站《c》版块原创发布, 转载请注明出处!
最新回复 (0)
  • g++ test.c -o test.exe -lncursesw 对我有用。

    ncurses 使用命令在 Windows 10 上 MSYS 安装 pacman -S mingw-w64-x86_64-ncurses

  • aedm 1月前 0 只看Ta
    引用 3

    我知道我主要指的是已经在 StackOverflow 上或其他地方发布的解决方案,但是,当你遇到这个问题时,仍然很难找到解决方案。我认为当前的问题是正确的,可以发布一个可以轻松找到的全面答案。由于这是一个反复出现的问题,这个问题值得一次总结和连贯的答案。也许标题应该改为如何在 Windows 上使用 ncurses,因为它绝对不是关于 ncurses 的“安装”,而是关于用法、正确的 #include 和 gcc 的链接器语句。

  • 在 VS Code 使用的 msys2 MingW64 默认安装的情况下,ncurses 基本是存在的,但是正确的包含和链接却不言而喻。

    这是一个非常简单的 ncurses-helloworld.cpp:

    #include <ncurses/ncurses.h>
    
    int main(int argc, char ** argv)
    {
        // init screen and sets up screen
        initscr();
        // print to screen
        printw("Hello World");
        // refreshes the screen
        refresh();
        // pause the screen output
        getch();
        // deallocates memory and ends ncurses
        // endwin();
        return 0;
    }
    

    当然,你可以在例如编译器的命令行或 makefile 中或任何地方设置包含路径, vscode 以便

    #include <ncurses.h>
    

    可以,但与此同时我习惯于只包含表单子目录中的所有内容 C:\msys64\mingw64\include - #include <directory name/filename.h> 通过 msys 包 pacman 直接安装

    要使用它正确链接 ncurses 库,请使用以下命令:

    g++ test.cpp -o test.exe -lncurses -DNCURSES_STATIC 
    

    或者

    gcc test.c -o test.exe -lncurses -DNCURSES_STATIC 
    

    对于纯 C 程序。

    这一问题 的评论中给出了解释 ,这让当时的原帖作者找到了适当的解决方案:

    \'标头定义 __declspec(dllexport) 除非 NCURSES_STATIC 已定义,因此添加 -DNCURSES_STATIC 为编译选项可修复所有问题。\'

返回
作者最近主题: