我按照说明从 debian wheezy 上的 git 构建了 mesa这里。我也必须libdrm_intel
从源代码构建,因为存储库中的版本太旧了。
我使用的是带有集成显卡的 T500,它具有 Intel 4500MHD
为了真正建造台面,我做了
./configure --prefix=/usr \
--enable-driglx-direct \
--enable-gles1 \
--enable-gles2 \
--enable-glx-tls \
--with-dri-driverdir=/usr/lib/dri \
--with-egl-platforms='drm x11' \
--with-dri-drivers=i965 \
--disable-dri3 \
--with-gallium-drivers=""
然后sudo make
驱动程序最终出现在/home/mark/mesa.git/lib/
,我将其导出到说明中指定的位置export LIBGL_DRIVERS_PATH=lib
。
$ LIBGL_DEBUG=verbose glxinfo 2>&1 >/dev/null | grep so$
libGL: OpenDriver: trying /home/mark/mesa.git/lib/tls/i965_dri.so
libGL: OpenDriver: trying /home/mark/mesa.git/lib/i965_dri.so
libGL error: unable to load driver: i965_dri.so
libGL: OpenDriver: trying /home/mark/mesa.git/lib/tls/swrast_dri.so
libGL: OpenDriver: trying /home/mark/mesa.git/lib/swrast_dri.so
libGL error: unable to load driver: swrast_dri.so
/home/mark/mesa.git/lib/i965_dri.so
存在,但仍然提示无法加载驱动程序。
$ ll /home/mark/mesa.git/lib/i965_dri.so
-rwxr-xr-x 3 root root 39M Jan 4 15:57 /home/mark/mesa.git/lib/i965_dri.so*
如果我不导出新的 lib 目录,/usr/lib/x86_64-linux-gnu/dri/i965_dri.so
则使用该目录。如果我用新编译的版本替换它,它就会开始加载失败。
我该如何找出为什么新编译的版本不起作用?