私はUbuntu 12.04を使用しています。現在、C、OpenGL、ティーポット、および入力方法に関するプロジェクトに取り組んでいます。gcc/usr/bin/ld:エラー:-lncursesを見つけることができません。
問題は、矢印キーを入力として決定したときに始まりました。矢印キーのキーコードを確認するためにチェックしましたが、すべての矢印は0を返します。これをどのように動作させるかを調べたところ、conio.hが見つかりました。残念ながら、それはLinuxでは利用できない古いDOSヘッダです。それから私はncursesと呼ばれる代用品を見つけました。
ビルドの手順に沿って必要なライブラリをインストールした後、main.cソースに#curses.hを組み込みました。私は最初のgccを使用してコンパイルしようとしたとき、私は次のエラーを得た:
SOURCES=main.c
main: main.o
gcc -lm -lGL -lGLU -lglut -lncurses main.o -o main
main.o: main.c
gcc -lm -lGL -lGLU -lglut -c main.c
しかし、私は別のエラーで迎えられた。
main.o:main.c:function _Key: error: undefined reference to 'stdscr'
main.o:main.c:function _Key: error: undefined reference to 'wgetch'
main.o:main.c:function _Key: error: undefined reference to 'stdscr'
main.o:main.c:function _Key: error: undefined reference to 'wgetch'
私はそうのようなメイクファイルに-lncursesを追加することで修正を見つけました:
/usr/bin/ld: error: cannot find -lncurses
以前のエラーと同じです。
私は過去2日間、UbuntuフォーラムとStackOverFlowの両方を検索しました。どんな助けもありがとう。
P.S.これが重要である場合、私は知らないが、私が、/ usr/binに/ LDを実行しようとすると、私はこのエラーを取得:
ld: fatal error: no input files
'apt-getののlibncurses5-dev'をインストールしますか? – trojanfoe
これらのコメントはなぜ小さくなければならないのですか?-0- 私は前にあなたのコメントが表示されませんでしたが、修正されました。なぜコンパイラが認識しなかった非公式版をインストールしたように見えますか?みんな、ありがとう! – Yrrej10