2

我在 Xubuntu x64 上,我想在我的软件中使用 ncurses。该软件正在使用 Qt Creator 4.8 构建。我没有任何问题,包括 ncurses.h 文件,但是当我想使用 ncurses 的函数(initscr() 和 endwin())时,出现以下错误:

未定义对“endwin”的引用

对“initscr”的未定义引用

我应该采取什么步骤来解决这个问题?

我已经安装了以下与 ncurses 相关的软件包:

  • libncurses5:amd64
  • libncurses5:i386
  • libncurses5-dbg
  • libncurses5-dev
  • libncursesw5:amd64
  • libncursesw5:i386
  • libncursesw5-dbg
  • libncursesw5-dev
  • ncurses 基础
  • ncurses-bin
  • ncurses-示例
4

2 回答 2

3

我发现(终于)

正确的方法:右键单击您的项目->添加库->系统库这里您需要 *.so 文件的路径(所以不是 *.so.5 或其他东西),在我的情况下 /usr/lib/x86_64-linux-gnu/libncurses.so

然后添加它并 tadaaa: 完成。

于 2013-03-17T22:27:37.563 回答
1

而且我还发现本指南可能有效,对我来说还没有工作 http://www.lucidarme.me/?p=3961

“在项目的 .pro 文件中,添加以下行以指定编译器必须使用 ncurses 库:

LIBS += -lncurses

为避免出现以下错误消息:“打开终端时出错:未知。”,请在 Qt 的运行环境中添加一个变量。项目 -> 运行 -> 运行环境 -> 添加。添加一个名为 TERM 的变量并将其设置为 xterm。”

UPD:通过检查 Projects->Run 中的“在终端中运行”选项解决了我的问题。

于 2016-06-17T10:10:24.947 回答