QtCreatorを再インストールし、新しいプロジェクト(Qt Application)を作成し、コンパイル後にこれを取得しました。
/usr/bin/ld: **cannot find -lGL**
collect2: error: ld returned 1 exit status
make: *** [untitled1] Error 1
18:07:41: The process "/usr/bin/make" exited with code 2.
Error while building/deploying project untitled1 (kit: Desktop Qt 5.1.0 GCC 32bit)
When executing step 'Make'
(プロジェクトは空、変更はコミットしなかった)
Qt Creator 2.7.2
Qt 5.1.0(32ビット)に基づく
Ubuntu 13.04
この問題を解決するにはどうすればよいですか?
パッケージ「libgl1-mesa-dev」をインストールする必要があります。
Sudo apt install libgl1-mesa-dev
何もインストールする必要はありません。 libGL
はすでにUbuntuとともにインストールされています。ソフトリンクするだけです。 (ubuntu 14.xおよび15.xでテスト済み。後のバージョンでも動作する可能性があります)
これを行う方法は次のとおりです。
$ locate libGL
/usr/lib/i386-linux-gnu/mesa/libGL.so.1
/usr/lib/i386-linux-gnu/mesa/libGL.so.1.2.0
/usr/lib/x86_64-linux-gnu/libGLEW.so.1.10
/usr/lib/x86_64-linux-gnu/libGLEW.so.1.10.0
/usr/lib/x86_64-linux-gnu/libGLEWmx.so.1.10
/usr/lib/x86_64-linux-gnu/libGLEWmx.so.1.10.0
/usr/lib/x86_64-linux-gnu/libGLU.so.1
/usr/lib/x86_64-linux-gnu/libGLU.so.1.3.1
/usr/lib/x86_64-linux-gnu/mesa/libGL.so.1
/usr/lib/x86_64-linux-gnu/mesa/libGL.so.1.2.0
/usr/lib/x86_64-linux-gnu/mesa-egl/libGLESv2.so.2
/usr/lib/x86_64-linux-gnu/mesa-egl/libGLESv2.so.2.0.0
$ Sudo ln -s /usr/lib/x86_64-linux-gnu/mesa/libGL.so.1 /usr/lib/libGL.so
私のシステムは、X86コンピューター上のUbuntu 16.04(NVIDIA Geforce GPUを使用)です。
/usr/lib/x86_64-linux-gnu
にあるライブラリファイルを確認します
ls -al /usr/lib/x86_64-linux-gnu/libG*
リンクが壊れている場合は、libgl1-mesa-glx
を再インストールしてください
Sudo apt install --resintall libgl1-mesa-glx
そして、ライブラリを再確認してください。
書く:
yum provides */libGL.so
提供後:
yum install mesa-libGL-devel mesa-libGLU-devel
Gui Qtモジュールは デフォルトで含まれています です。プロジェクトで使用したくない場合(たとえば、ライブラリであるか、stdioのみを使用する場合)、. proファイルで指定する必要があります。
QT -= gui
また、リンカーは、インストールされているかどうかに関係なく、lGLを見つけようとしません。
Qtを使用する主な理由はguiを作成することだからです。 GLライブラリをインストールすることは確かに難しくありません。ただ、なぜ早くて汚いHello Worldがそれを望んだのかを知りたかっただけです。
これは私のために働いた:
Sudo ln -s /usr/lib/libEGL1.so /usr/lib/libGL.so