インポートされたターゲット「Qt5::Gui」はファイル「/usr/lib/x86_64-linux-gnu/libEGL.so」を参照しますが、このファイルは存在しません。

インポートされたターゲット「Qt5::Gui」はファイル「/usr/lib/x86_64-linux-gnu/libEGL.so」を参照しますが、このファイルは存在しません。

ということで、15.04 x64 をインストールしました。

DRI2 認証に関するエラーが発生したため、古い方法 (コンソール、lightdm をオフにする) で nvidia バイナリをインストールしました。

次に、NV OpenGL サンプルをビルドしたかったのですが、前提条件として以下が必要であると言われました。

sudo apt-get install g++ binutils-gold xorg-dev libglu1-mesa-dev

しかし、libGL.so が見つからないというエラーが出たので、グーグルで検索して、次のものをすべてインストールしてみました。

   61  sudo apt-get install libgl1-mesa-dev 
   62  sudo apt-get autoremove
   63  make
   64  sudo apt-get install mesa-common-dev 
   65  sudo apt-get install freeglut3-dev freeglut3
   66  make
   67  sudo apt-get install build-essential

そして、なぜかは分かりませんが、NVIDIA ドライバーがアンインストールされてしまいました! (途中でいくつかの NV 関連のものを含んだ自動削除もあったので、それがすべてを台無しにしたのかもしれません)

とにかく、nvバイナリを再インストールした後、vogl(GLデバッグツール)をビルドしようとすると、再び

elect@elect-desktop:~/NetBeansProjects/vogl/vogl_build/release64$ cmake -DCMAKE_BUILD_TYPE=Release -DBUILD_X64=On ../..

cmake options:
  -DCMAKE_BUILD_TYPE='Release': Build debug or release. (Debug|Release)
  -DVOGLTEST_LOAD_LIBVOGLTRACE='': glitest will load libvogltrace.so manually (don't implictly link against libgl.so). (On|Off)
  -DVOGLTRACE_NO_PUBLIC_EXPORTS='OFF': Don't define any public GL exports in libvogltrace.so. (On|Off)
  -DVOGL_ENABLE_ASSERTS='OFF': Enable assertions in all voglcore builds (including release). (On|Off)
  -DCMAKE_VERBOSE='OFF': Spew cmake project options. (On|Off)
  -DBUILD_X64='On': Build 32 or 64-bit. (On|Off)
  -DWITH_ASAN='OFF': Build with Address sanitizer. (On|Off)
  -DUSE_TELEMETRY='OFF': Build with Telemetry. (On|Off)
  -DUSE_MALLOC='': Use system malloc (not STB Malloc). (On|Off)

Not forcing assertions to be enabled (VOGL_ENABLE_ASSERTS=FALSE)
libvogltrace.so will define GL/GLX public exports
CMake Error at /usr/lib/x86_64-linux-gnu/cmake/Qt5Gui/Qt5GuiConfig.cmake:27 (message):
  The imported target "Qt5::Gui" references the file

     "/usr/lib/x86_64-linux-gnu/libEGL.so"

  but this file does not exist.  Possible reasons include:

  * The file was deleted, renamed, or moved to another location.

  * An install or uninstall procedure did not complete successfully.

  * The installation package was faulty and contained

     "/usr/lib/x86_64-linux-gnu/cmake/Qt5Gui/Qt5GuiConfigExtras.cmake"

  but not all the files it references.

Call Stack (most recent call first):
  /usr/lib/x86_64-linux-gnu/cmake/Qt5Gui/Qt5GuiConfigExtras.cmake:32 (_qt5_Gui_check_file_exists)
  /usr/lib/x86_64-linux-gnu/cmake/Qt5Gui/Qt5GuiConfigExtras.cmake:54 (_qt5gui_find_extra_libs)
  /usr/lib/x86_64-linux-gnu/cmake/Qt5Gui/Qt5GuiConfig.cmake:158 (include)
  /usr/lib/x86_64-linux-gnu/cmake/Qt5Widgets/Qt5WidgetsConfig.cmake:100 (find_package)
  /usr/lib/x86_64-linux-gnu/cmake/Qt5/Qt5Config.cmake:26 (find_package)
  src/vogleditor/CMakeLists.txt:14 (find_package)


-- Configuring incomplete, errors occurred!
See also "/home/elect/NetBeansProjects/vogl/vogl_build/release64/CMakeFiles/CMakeOutput.log".
See also "/home/elect/NetBeansProjects/vogl/vogl_build/release64/CMakeFiles/CMakeError.log".

elect@elect-desktop:~/NetBeansProjects/vogl/vogl_build/release64$ ls /usr/lib/x86_64-linux-gnu | grep -i libegl
libEGL.so
libEGL.so.1
libEGL.so.346.59

どうしたの、みんな?

答え1

とにかく話を要約しましょう。

$ ls /usr/lib/x86_64-linux-gnu | grep -i libegl
libEGL.so 
libEGL.so.1 
libEGL.so.346.59

ls -l /usr/lib/x86_64-linux-gnu/libEGL.so
lrwxrwxrwx 1 root root 18 mar 30 17:10 /usr/lib/x86_64-linux-gnu/libEGL.so -> mesa-egl/libEGL.so

そして

lrwxrwxrwx 1 root root 15 mar 30 17:10 /usr/lib/x86_64-linux-gnu/mesa-egl/libEGL.so -> libEGL.so.1.0.0

しかし、libEGL.so.1.0.0 はありませんでした。

メサとNVバイナリから来た混乱のようです

バイナリを3回目にインストールしたら、うまくいきました。

もう一つの解決策としては、Angelo Geels 氏のコメントにある次の解決策が考えられます。

sudo rm /usr/lib/x86_64-linux-gnu/libEGL.so; sudo ln /usr/lib/x86_64-linux-gnu/libEGL.so.1 /usr/lib/x86_64-linux-gnu/libEGL.so

関連情報