我在 Ubuntu 18.04 上。我正尝试按照说明安装 EAGLE这里。我已下载并解压该包并将其放在我的主目录中。
在eagle文件夹中,我运行./eagle run
并出现以下错误:
$ ./eagle run
Warning: QT_DEVICE_PIXEL_RATIO is deprecated. Instead use:
QT_AUTO_SCREEN_SCALE_FACTOR to enable platform plugin controlled per-screen factors.
QT_SCREEN_SCALE_FACTORS to set per-screen factors.
QT_SCALE_FACTOR to set the application global scale factor.
./eagle: symbol lookup error: /usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0: undefined symbol: xcb_dri3_get_supported_modifiers
我尝试运行sudo ./eagle run
,但得到的却是这个:
$ sudo ./eagle run
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
./eagle: symbol lookup error: /usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0: undefined symbol: xcb_dri3_get_supported_modifiers
说明书中没有提到使用sudo
,但我还是尝试了。我不确定该如何处理这 2 个错误。我该如何修复此问题以运行 EAGLE?
更新 1:
我尝试运行以下命令:
~$ dpkg -S /usr/lib/x86_64-linux-gnu/libGLX_mesa.so
dpkg-query: no path found matching pattern /usr/lib/x86_64-linux-gnu/libGLX_mesa.so
~$ apt-cache policy $(dpkg -S /usr/lib/x86_64-linux-gnu/libGLX_mesa.so.0 | awk -F ":" '{print $1}')
libglx-mesa0:
Installed: 19.0.8-0ubuntu0~18.04.2
Candidate: 19.0.8-0ubuntu0~18.04.3
Version table:
19.0.8-0ubuntu0~18.04.3 500
500 http://vn.archive.ubuntu.com/ubuntu bionic-updates/main amd64 Packages
*** 19.0.8-0ubuntu0~18.04.2 100
100 /var/lib/dpkg/status
18.0.0~rc5-1ubuntu1 500
500 http://vn.archive.ubuntu.com/ubuntu bionic/main amd64 Packages
~$ dpkg -l | grep -i hwe
ii linux-generic-hwe-18.04 5.0.0.31.88 amd64 Complete Generic Linux kernel and headers
ii linux-headers-generic-hwe-18.04 5.0.0.31.88 amd64 Generic Linux kernel headers
ii linux-image-generic-hwe-18.04 5.0.0.31.88 amd64 Generic Linux kernel image
ii linux-signed-generic-hwe-18.04 5.0.0.31.88 amd64 Complete Signed Generic Linux kernel and headers (dummy transitional package)
ii xserver-xorg-core-hwe-18.04 2:1.20.4-1ubuntu3~18.04.1 amd64 Xorg X server - core server
ii xserver-xorg-hwe-18.04 1:7.7+19ubuntu8~18.04.2 amd64 X.Org X server
ii xserver-xorg-input-all-hwe-18.04 1:7.7+19ubuntu8~18.04.2 amd64 X.Org X server -- input driver metapackage
ii xserver-xorg-input-libinput-hwe-18.04 0.28.1-1~18.04.1 amd64 X.Org X server -- libinput input driver
ii xserver-xorg-input-wacom-hwe-18.04 1:0.36.1-0ubuntu1~18.04.1 amd64 X.Org X server -- Wacom input driver
ii xserver-xorg-legacy-hwe-18.04 2:1.20.4-1ubuntu3~18.04.1 amd64 setuid root Xorg server wrapper
ii xserver-xorg-video-all-hwe-18.04 1:7.7+19ubuntu8~18.04.2 amd64 X.Org X server -- output driver metapackage
ii xserver-xorg-video-amdgpu-hwe-18.04 19.0.1-1~18.04.1 amd64 X.Org X server -- AMDGPU display driver
ii xserver-xorg-video-ati-hwe-18.04 1:19.0.1-0ubuntu1~18.04.1 amd64 X.Org X server -- AMD/ATI display driver wrapper
ii xserver-xorg-video-fbdev-hwe-18.04 1:0.5.0-1ubuntu1~18.04.1 amd64 X.Org X server -- fbdev display driver
ii xserver-xorg-video-intel-hwe-18.04 2:2.99.917+git20171229-1ubuntu1~18.04.1 amd64 X.Org X server -- Intel i8xx, i9xx display driver
ii xserver-xorg-video-nouveau-hwe-18.04 1:1.0.16-1~18.04.1 amd64 X.Org X server -- Nouveau display driver
ii xserver-xorg-video-qxl-hwe-18.04 0.1.5-2build2~18.04.1 amd64 X.Org X server -- QXL display driver
ii xserver-xorg-video-radeon-hwe-18.04 1:19.0.1-0ubuntu1~18.04.1 amd64 X.Org X server -- AMD/ATI Radeon display driver
ii xserver-xorg-video-vesa-hwe-18.04 1:2.4.0-1~18.04.1 amd64 X.Org X server -- VESA display driver
ii xserver-xorg-video-vmware-hwe-18.04 1:13.3.0-2build1~18.04.1 amd64 X.Org X server -- VMware display driver
更新 2:
我运行了更多命令:
~$ ldd Eagle | grep local
ldd: ./Eagle: not regular file
~$ lsmod | grep drm
drm_kms_helper 180224 1 i915
syscopyarea 16384 1 drm_kms_helper
sysfillrect 16384 1 drm_kms_helper
sysimgblt 16384 1 drm_kms_helper
fb_sys_fops 16384 1 drm_kms_helper
drm 483328 16 drm_kms_helper,i915
~$ lspci | grep -iE "VGA|Video|Graphics"
00:02.0 VGA compatible controller: Intel Corporation Haswell-ULT Integrated Graphics Controller (rev 0b)
答案1
根据自述文件
-- Linux 图形驱动程序问题 Nouveau(nVidia 卡的开源驱动程序)可能会在登录过程中导致偶尔崩溃。
通过将 LIBGL_ALWAYS_SOFTWARE 设置为 1 来在 libGL 中启用软件渲染。
导出 LIBGL_ALWAYS_SOFTWARE=1 ./eagle
我跑了
$: export LIBGL_ALWAYS_SOFTWARE=1
然后运行可执行文件,它就成功了