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 ビン
  • ncurses-例
4

2 に答える 2

3

わかった(やっと)

それを行う正しい方法:プロジェクトを右クリック->ライブラリを追加->システムライブラリここでは、*.soファイルへのパスが必要です(*.so.5などではありません)。これは私の場合でした /usr/lib/x86_64-linux-gnu/libncurses.so

それを追加して、tadaaaa: 完了。

于 2013-03-17T22:27:37.563 に答える
1

また、このガイドが機能する可能性があることもわかりました。私にはまだ機能していません http://www.lucidarme.me/?p=3961

「プロジェクトの .pro ファイルで、次の行を追加して、ncurses ライブラリを使用する必要があるコンパイラに指定します。

LIBS += -lncurses

次のエラー メッセージを回避するには、「ターミナルを開く際のエラー: 不明です。」、Qt の実行環境に変数を追加します。プロジェクト -> 実行 -> 実行環境 -> 追加。TERM という名前の変数を追加し、xterm に設定します。」

UPD:プロジェクト->実行の「ターミナルで実行」オプションをチェックすることで問題が解決しました。

于 2016-06-17T10:10:24.947 に答える