はじめまして.ホームページかなり為になりました. 質問があるのですが,させていただいてもよろしいでしょうか?
今日Linuxを導入してみました. それで,C言語プログラムをコンパイルしようとしたところ, OpenGLが入っておらずエラーが出たので,MesaLib-6.2.tar.gzなどを用いて, includeにOpenGL(GL/glut.h)を追加しました.
しかし,コンパイルの段階でまだ usr/bin/ld cannot find -lx11 というエラーが表示され,コンパイルできません. x11について調べてみたのですが,画像系ということはわかったのですが このエラーの意味がわかりませんでした.
このファイルをコンパイルするにはどうしたらいいのでしょうか? -lx11を導入するのでしょうか?その方法を教えていただければと 思います.
変な質問で申し訳ありませんが宜しくお願いします
> usr/bin/ld cannot find -lx11
は,「x11というライブラリをロードしようとしましたが見つかりません」というエラーです("-l"というのがライブラリという意味).普通,"-lX11" のようにXは大文字で書くと思うのですが,これは正しいエラーメッセージですか? だとしたら,コンパイルするときにxを大文字で書いてみては.
> 今日Linuxを導入してみました. > それで,C言語プログラムをコンパイルしようとしたところ, > OpenGLが入っておらずエラーが
Linuxにもいろいろありますので,質問するときはディストリビューション名とバージョン名を記すべきです.Xのバージョンはいくつですか?どんなプログラムをどのようにコンパイルしようとしたかも分かりませんし….
質問しておいて長らく返事がかけなくてすいませんでした. Xは大文字です.大変失礼しました. つかっているLINUXは,Vine Linux3.0で,コンパイルは gccを用いてコンパイルしています.プログラムは,C言語でOPENGLで線を書かせる 簡単なものです.私が書いたものではないのですが,実行したいんです.
X11というファイルは,usr/bin/X11というところにありました. usr/bin/ld というエラーメッセージなのですがldというファイルはありません. すみませんが再びよろしくお願いします.
> ぷぅ さん
初めまして.もし問題を解決したいならば,ソース,エラーメッセージもきちんと示したほうがよいです. ( http://www.linux.or.jp/beginners/question.html を一度読んでみてください)
/usr/bin/ld がないのなら,それを入れては?
COさんフォローありがとうございます.やはり,この掲示板にも質問の仕方的文章があったほうが良いですね.本題ですが,ぷぅさん
> usr/bin/ld cannot find -lX11
というメッセージはですね,(X11というファイルではなく)X11のライブラリがないのが原因です.Vine 3.0ならapt-getが使えますので,
# apt-get install XOrg-libs XOrg-devel XOrg-gl-devel
でインストール可能です.GLUTは入っていますか?入れていないのならば
# apt-get install glut-devel
も実行してみてください.atp-getについては,Vine Linuxのオンラインマニュアル
を参照されてください(僕のサイトのOpenGLの記事,Vine3.0の場合は書いていなかったですね.不親切でした.更新しておきます).
本当にどうもありがとうございました. apt-getで自動的にインストールできてしまうってすごいですね! 最初はパッケージがみつかりませんと出たのですが, それもupgradeすることで,解決しました.
とにかくOpenGLをつかったプログラムが動いて,良かったです. こんな質問に丁寧に答えてくださってありがとうございました.