添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
帅呆的茴香  ·  CMAKE学习记录 - Alpha205 ·  4 天前    · 
低调的风衣  ·  cmake .. fails: ...·  昨天    · 
追风的便当  ·  Unable to install ...·  昨天    · 
要出家的泡面  ·  libEGL.so does not ...·  昨天    · 
安静的松鼠  ·  Pytorch ...·  9 月前    · 
健身的冲锋衣  ·  New-PSSession ...·  1 年前    · 
玩滑板的荔枝  ·  rest - NestJS not ...·  1 年前    · 
长情的豆腐  ·  Pandas 获取DataFrame ...·  2 年前    · 
酒量小的火腿肠  ·  Owl Carousel - ...·  2 年前    · 

libEGL.so does not exist #380

Closed
Closed
@CorneliusHsiao

Description

Linux Ubuntu 16.04, i7-7700K, GTX 1080Ti

Hello, I am new to COLMAP and am installing it in Ubuntu. When I run cmake .. , there occurs the error that

The imported target "QT5::Gui" references the file 
"/usr/lib/x86_64-linux-gnu/libEGL.so"
but this file does not exist.

Here is the status of dependencies and it seems to be all correct.

sudo apt-get install     cmake     build-essential     libboost-program-options-dev     libboost-filesystem-dev     libboost-regex-dev     libboost-system-dev     libboost-test-dev     libeigen3-dev     libsuitesparse-dev     libfreeimage-dev     libgoogle-glog-dev     libgflags-dev     libglew-dev     qtbase5-dev     libqt5opengl5-dev
Reading package lists... Done
Building dependency tree       
Reading state information... Done
build-essential is already the newest version (12.1ubuntu2).
libboost-program-options-dev is already the newest version (1.58.0.1ubuntu1).
libglew-dev is already the newest version (1.13.0-2).
libsuitesparse-dev is already the newest version (1:4.4.6-1).
libboost-filesystem-dev is already the newest version (1.58.0.1ubuntu1).
libboost-regex-dev is already the newest version (1.58.0.1ubuntu1).
libboost-system-dev is already the newest version (1.58.0.1ubuntu1).
libboost-test-dev is already the newest version (1.58.0.1ubuntu1).
libeigen3-dev is already the newest version (3.3~beta1-2).
libfreeimage-dev is already the newest version (3.17.0+ds1-2).
libgflags-dev is already the newest version (2.1.2-3).
libgoogle-glog-dev is already the newest version (0.3.4-0.1).
cmake is already the newest version (3.5.1-1ubuntu3).
libqt5opengl5-dev is already the newest version (5.5.1+dfsg-16ubuntu7.5).
qtbase5-dev is already the newest version (5.5.1+dfsg-16ubuntu7.5).
The following packages were automatically installed and are no longer required:
  bbswitch-dkms linux-headers-4.13.0-38 linux-headers-4.13.0-38-generic linux-image-4.13.0-38-generic
  linux-image-extra-4.13.0-38-generic linux-signed-image-4.13.0-38-generic nvidia-prime snap-confine
Use 'sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 7 not upgraded.

Below is the cmake file "/usr/lib/x86_64-linux-gnu/cmake/Qt5Gui/Qt5GuiConfigExtras.cmake" (for reference to the possible error tracking).

set(_GL_INCDIRS "/usr/include/libdrm")
find_path(_qt5gui_OPENGL_INCLUDE_DIR GL/gl.h
    PATHS ${_GL_INCDIRS}
if (NOT _qt5gui_OPENGL_INCLUDE_DIR)
    message(FATAL_ERROR "Failed to find \"GL/gl.h\" in \"${_GL_INCDIRS}\".")
endif()
unset(_GL_INCDIRS)
# Don't check for existence of the _qt5gui_OPENGL_INCLUDE_DIR because it is
# optional.
list(APPEND Qt5Gui_INCLUDE_DIRS ${_qt5gui_OPENGL_INCLUDE_DIR})
set_property(TARGET Qt5::Gui APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${_qt5gui_OPENGL_INCLUDE_DIR})
unset(_qt5gui_OPENGL_INCLUDE_DIR CACHE)
macro(_qt5gui_find_extra_libs Name Libs LibDir IncDirs)
    set(Qt5Gui_${Name}_LIBRARIES)
    set(Qt5Gui_${Name}_INCLUDE_DIRS ${IncDirs})
    foreach(_lib ${Libs})
        string(REGEX REPLACE [^_A-Za-z0-9] _ _cmake_lib_name ${_lib})
        if (NOT TARGET Qt5::Gui_${_cmake_lib_name} AND NOT _Qt5Gui_${_cmake_lib_name}_LIBRARY_DONE)
            find_library(Qt5Gui_${_cmake_lib_name}_LIBRARY ${_lib}
            if (NOT Qt5Gui_${_cmake_lib_name}_LIBRARY)
                # The above find_library call doesn't work for finding
                # libraries in Windows SDK paths outside of the proper
                # environment, even if the libraries are present.  In other
                # cases it is OK for the libraries to not be found
                # because they are optional dependencies of Qt5Gui, needed
                # only if the qopengl.h header is used.
                # We try to find the libraries in the first place because Qt may be
                # compiled with another set of GL libraries (such as coming
                # from ANGLE).  The point of these find calls is to try to
                # find the same binaries as Qt is compiled with (as they are
                # in the interface of QtGui), so an effort is made to do so
                # above with paths known to qmake.
                set(_Qt5Gui_${_cmake_lib_name}_LIBRARY_DONE TRUE)
                unset(Qt5Gui_${_cmake_lib_name}_LIBRARY CACHE)
            else()
                add_library(Qt5::Gui_${_cmake_lib_name} SHARED IMPORTED)
                set_property(TARGET Qt5::Gui_${_cmake_lib_name} APPEND PROPERTY INTERFACE_INCLUDE_DIRECTORIES ${Qt5Gui_${Name}_INCLUDE_DIRS})
                set_property(TARGET Qt5::Gui_${_cmake_lib_name} APPEND PROPERTY IMPORTED_CONFIGURATIONS RELEASE)
                _qt5_Gui_check_file_exists("${Qt5Gui_${_cmake_lib_name}_LIBRARY}")
                set_property(TARGET Qt5::Gui_${_cmake_lib_name} PROPERTY IMPORTED_LOCATION_RELEASE "${Qt5Gui_${_cmake_lib_name}_LIBRARY}")
                unset(Qt5Gui_${_cmake_lib_name}_LIBRARY CACHE)
                find_library(Qt5Gui_${_cmake_lib_name}_LIBRARY_DEBUG ${_lib}d
                    PATHS "${LibDir}"
                    NO_DEFAULT_PATH
                if (Qt5Gui_${_cmake_lib_name}_LIBRARY_DEBUG)
                    set_property(TARGET Qt5::Gui_${_cmake_lib_name} APPEND PROPERTY IMPORTED_CONFIGURATIONS DEBUG)
                    _qt5_Gui_check_file_exists("${Qt5Gui_${_cmake_lib_name}_LIBRARY_DEBUG}")
                    set_property(TARGET Qt5::Gui_${_cmake_lib_name} PROPERTY IMPORTED_LOCATION_DEBUG "${Qt5Gui_${_cmake_lib_name}_LIBRARY_DEBUG}")
                endif()
                unset(Qt5Gui_${_cmake_lib_name}_LIBRARY_DEBUG CACHE)
                list(APPEND Qt5Gui_${Name}_LIBRARIES Qt5::Gui_${_cmake_lib_name})
            endif()
        endif()
    endforeach()
endmacro()
_qt5gui_find_extra_libs(EGL "EGL" "" "/usr/include/libdrm")
_qt5gui_find_extra_libs(OPENGL "GL" "" "/usr/include/libdrm")
set(Qt5Gui_OPENGL_IMPLEMENTATION GL)
get_target_property(_configs Qt5::Gui IMPORTED_CONFIGURATIONS)
foreach(_config ${_configs})
    set_property(TARGET Qt5::Gui APPEND PROPERTY
        IMPORTED_LINK_DEPENDENT_LIBRARIES_${_config}
        ${Qt5Gui_EGL_LIBRARIES} ${Qt5Gui_OPENGL_LIBRARIES}
endforeach()
unset(_configs)

Any help will be greatly appreciated. Thank you!