我为什么会收到错误"找不到-lncurses"?

时间:2018-03-18 05:41:41

标签: c gcc cygwin ncurses

我刚刚在C开始了一个大学课程,我们已经被指示通过Cygwin运行一个makefile(它使用GCC编译器),但是我对计算机知之甚少,并且对如何解决这个问题没有想法。当我运行makefile时,它说: cannot find -lncurses。 我知道ncurses是一个库,编译器正在寻找它,因为makefile中的一些文件需要它,但我不知道它是如何丢失的,它在哪里,或者我如何指向编译器。有人可以给我任何建议吗?

1 个答案:

答案 0 :(得分:1)

您需要附加包。

来自https://cygwin.com/ml/cygwin-announce/2001/msg00124.html

  

ncurses包已更新为ncurses-5.2-7。 ncurses是一个   提供字符和终端处理库的包,   包括'gui-like'面板和菜单。它通常用来代替   的termcap。

     

对ncurses包的重大更改:

     
      
  1. ncurses包已拆分为三个独立的包:     ncurses-5.2-7(包含静态库,头文件,                        手册页等)     libncurses6-5.2-2(包含新的DLL)     terminfo-5.2-1(包含terminfo数据库)

  2.   
  3. libncurses5-5.2-1是一个包含旧包的新包     来自ncurses-5.2-5的DLL,用于向后兼容。

  4.   
  5. 现在使用“自动导入”功能构建ncurses     最近的binutils。

  6.   
  7. ncurses-5.2-5a如果需要回滚,这个包                       包含来自ncurses-5.2-5的文件                       (post splitup)因此,这个包+                       terminfo + libncurses5 = old ncurses-5.2-5。

  8.         

    有关其他信息,请参阅下面的注释。

         

    安装:

         

    要更新您的安装,请单击“立即安装Cygwin”链接   http://cygwin.com/网页。这会将setup.exe下载到您的   系统。然后,运行设置TWICE并回答所有问题   时间。第一次,只更新ncurses包。第二   时间,安装terminfo,libncurses5和libncurses6包。   你必须做两个步骤。