当前位置:   article > 正文

安装colmap报错:libOpenGL.so: undefined reference to `_glapi_tls_Current‘

libopengl.so

1.检查 lib/x86_64-linux-gnu/libOpenGL.so

nm -D /lib/x86_64-linux-gnu/libOpenGL.so.0.0.0 | grep tls

输出为

U _glapi_tls_Current

U代表undefined,则一定在其链接的动态库中有定义

ldd /usr/lib/x86_64-linux-gnu/libOpenGL.so.0.0.0

输出为

  1. linux-vdso.so.1 (0x00007ffd81bb9000)
  2. libGLdispatch.so.0 => /lib/x86_64-linux-gnu/libGLdispatch.so.0 (0x00007f5f9cecf000)
  3. libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f5f9ccdd000)
  4. libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f5f9ccd7000)
  5. /lib64/ld-linux-x86-64.so.2 (0x00007f5f9d207000)

按照google搜索的答案,定义在 libGLdispatch.so 中

nm -D /lib/x86_64-linux-gnu/libGLdispatch.so.0 | grep tls

无输出,再查看

nm -D /lib/x86_64-linux-gnu/libGLdispatch.so.0 | grep glapi
  1. 00000000002e6be8 D _glapi_Current
  2. 0000000000042740 T _glapi_get_current

可能是libglvnd版本问题,但是这是apt-get安装的最新版本,因此转而考虑从github源码编译   https://github.com/NVIDIA/libglvnd.git

按照步骤安装后,成功编译

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/一键难忘520/article/detail/768654
推荐阅读
相关标签
  

闽ICP备14008679号