libGL error: MESA-LOADER

Hello,

I have tried to find a solution to this but no luck so far, any help at all would be great.

So first my inxi -Fazy output:

system info

System:
Kernel: 5.4.123-1-MANJARO x86_64 bits: 64 compiler: gcc v: 11.1.0
parameters: BOOT_IMAGE=/boot/vmlinuz-5.4-x86_64
root=UUID=cc41d871-75d8-47ca-bef2-121225a94361 rw quiet apparmor=1
security=apparmor resume=UUID=701a41e7-98fd-4b49-aebf-f56d8c710b6a
udev.log_priority=3 fbcon=scrollback:1024k
Desktop: Xfce 4.16.0 tk: Gtk 3.24.24 info: xfce4-panel wm: xfwm4 vt: 7
dm: LightDM 1.30.0 Distro: Manjaro Linux base: Arch Linux
Machine:
Type: Laptop System: System76 product: Galago Pro v: galp3-b
serial: Chassis: type: 10 serial:
Mobo: System76 model: Galago Pro v: galp3-b serial:
UEFI: American Megatrends v: 1.05.02S76 date: 03/26/2018
Battery:
ID-1: BAT0 charge: 31.2 Wh (100.0%) condition: 31.2/35.3 Wh (88.2%)
volts: 12.8 min: 11.4 model: Notebook BAT type: Li-ion serial:
status: Full
CPU:
Info: Quad Core model: Intel Core i7-8550U bits: 64 type: MT MCP
arch: Kaby Lake note: check family: 6 model-id: 8E (142) stepping: A (10)
microcode: E0 cache: L2: 8 MiB
flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
bogomips: 32012
Speed: 800 MHz min/max: 400/4000 MHz Core speeds (MHz): 1: 800 2: 800 3: 800
4: 800 5: 800 6: 800 7: 800 8: 801
Vulnerabilities: Type: itlb_multihit status: KVM: Split huge pages
Type: l1tf
mitigation: PTE Inversion; VMX: conditional cache flushes, SMT vulnerable
Type: mds mitigation: Clear CPU buffers; SMT vulnerable
Type: meltdown mitigation: PTI
Type: spec_store_bypass
mitigation: Speculative Store Bypass disabled via prctl and seccomp
Type: spectre_v1
mitigation: usercopy/swapgs barriers and __user pointer sanitization
Type: spectre_v2 mitigation: Full generic retpoline, IBPB: conditional,
IBRS_FW, STIBP: conditional, RSB filling
Type: srbds mitigation: Microcode
Type: tsx_async_abort status: Not affected
Graphics:
Device-1: Intel UHD Graphics 620 vendor: CLEVO/KAPOK driver: i915 v: kernel
bus-ID: 00:02.0 chip-ID: 8086:5917 class-ID: 0300
Device-2: Chicony Chicony USB2.0 Camera type: USB driver: uvcvideo
bus-ID: 1-4:2 chip-ID: 04f2:b649 class-ID: 0e02
Device-3: Logitech B525 HD Webcam type: USB driver: snd-usb-audio,uvcvideo
bus-ID: 1-7.1:11 chip-ID: 046d:0836 class-ID: 0e02 serial:
Display: x11 server: X.Org 1.20.11 driver: loaded: intel
unloaded: modesetting alternate: fbdev,vesa display-ID: :0.0 screens: 1
Screen-1: 0 s-res: 3840x2160 s-dpi: 96 s-size: 1016x572mm (40.0x22.5")
s-diag: 1166mm (45.9")
Monitor-1: eDP1 res: 1920x1080 hz: 60 dpi: 157 size: 310x170mm (12.2x6.7")
diag: 354mm (13.9")
Monitor-2: DP1 res: 1920x1080 hz: 60 dpi: 163 size: 300x260mm (11.8x10.2")
diag: 397mm (15.6")
Monitor-3: HDMI2 res: 1920x1080 hz: 60 dpi: 81 size: 600x340mm (23.6x13.4")
diag: 690mm (27.2")
OpenGL: renderer: Mesa Intel UHD Graphics 620 (KBL GT2) v: 4.6 Mesa 21.1.2
direct render: Yes
Audio:
Device-1: Intel Sunrise Point-LP HD Audio vendor: CLEVO/KAPOK
driver: snd_hda_intel v: kernel alternate: snd_soc_skl bus-ID: 00:1f.3
chip-ID: 8086:9d71 class-ID: 0403
Device-2: Logitech B525 HD Webcam type: USB driver: snd-usb-audio,uvcvideo
bus-ID: 1-7.1:11 chip-ID: 046d:0836 class-ID: 0e02 serial:
Device-3: Samson GoMic compact condenser mic type: USB
driver: hid-generic,snd-usb-audio,usbhid bus-ID: 1-7.2:12 chip-ID: 17a0:0305
class-ID: 0300
Sound Server-1: ALSA v: k5.4.123-1-MANJARO running: yes
Sound Server-2: JACK v: 0.125.0 running: no
Sound Server-3: PulseAudio v: 14.2 running: yes
Sound Server-4: PipeWire v: 0.3.28 running: no
Network:
Device-1: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet
vendor: CLEVO/KAPOK driver: r8169 v: kernel port: e000 bus-ID: 3a:00.1
chip-ID: 10ec:8168 class-ID: 0200
IF: enp58s0f1 state: up speed: 1000 Mbps duplex: full mac:
Device-2: Intel Wireless 8265 / 8275 driver: iwlwifi v: kernel port: e000
bus-ID: 3b:00.0 chip-ID: 8086:24fd class-ID: 0280
IF: wlp59s0 state: down mac:
IF-ID-1: docker0 state: down mac:
Bluetooth:
Device-1: Intel Bluetooth wireless interface type: USB driver: btusb v: 0.8
bus-ID: 1-5:3 chip-ID: 8087:0a2b class-ID: e001
Report: rfkill ID: hci0 rfk-id: 3 state: down bt-service: enabled,running
rfk-block: hardware: no software: yes address: see --recommends
Drives:
Local Storage: total: 1.48 TiB used: 85.56 GiB (5.6%)
SMART Message: Required tool smartctl not installed. Check --recommends
ID-1: /dev/mmcblk0 maj-min: 179:0 vendor: Swissbit model: SF128
size: 119.08 GiB block-size: physical: 512 B logical: 512 B rotation: SSD
serial: scheme: MBR
ID-2: /dev/nvme0n1 maj-min: 259:0 vendor: Samsung model: SSD 970 EVO 500GB
size: 465.76 GiB block-size: physical: 512 B logical: 512 B speed: 31.6 Gb/s
lanes: 4 rotation: SSD serial: rev: 2B2QEXE7 scheme: GPT
ID-3: /dev/sda maj-min: 8:0 vendor: Samsung model: SSD 860 EVO 1TB
size: 931.51 GiB block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s
rotation: SSD serial: rev: 2B6Q scheme: MBR
Partition:
ID-1: / raw-size: 448.39 GiB size: 440.35 GiB (98.21%)
used: 53.22 GiB (12.1%) fs: ext4 dev: /dev/nvme0n1p2 maj-min: 259:2
ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
used: 312 KiB (0.1%) fs: vfat dev: /dev/nvme0n1p1 maj-min: 259:1
Swap:
Kernel: swappiness: 60 (default) cache-pressure: 100 (default)
ID-1: swap-1 type: partition size: 17.07 GiB used: 229.5 MiB (1.3%)
priority: -2 dev: /dev/nvme0n1p3 maj-min: 259:3
Sensors:
System Temperatures: cpu: 66.0 C mobo: N/A
Fan Speeds (RPM): N/A
Info:
Processes: 251 Uptime: 1d 2h 15m wakeups: 1 Memory: 15.52 GiB
used: 5.57 GiB (35.9%) Init: systemd v: 247 tool: systemctl Compilers:
gcc: 11.1.0 Packages: pacman: 1201 lib: 392 flatpak: 0 Shell: Bash v: 5.1.8
running-in: xfce4-terminal inxi: 3.3.04

Update status:

I’ve updated with:
sudo pacman-mirrors -f 5
and
sudo pacman -Syyu
(after a timeshift backup of course)

The issue I’m facing:

When I run python make_plot.py path/to/input.npy I have a short demo script that just plots my data with plt.show() to show the plot, this works and opens up the plot in another window, but in my terminal I get the following errors:

Errors on opening matplotlib plot

libGL error: MESA-LOADER: failed to open iris: /home/geodev/anaconda3/envs/geocomp/lib/python3.8/site-packages/matplotlib/…/…/…/libstdc++.so.6: version GLIBCXX_3.4.29' not found (required by /usr/lib/dri/iris_dri.so) (search paths /usr/lib/dri) libGL error: failed to load driver: iris libGL error: MESA-LOADER: failed to open iris: /home/geodev/anaconda3/envs/geocomp/lib/python3.8/site-packages/matplotlib/../../../libstdc++.so.6: version GLIBCXX_3.4.29’ not found (required by /usr/lib/dri/iris_dri.so) (search paths /usr/lib/dri)
libGL error: failed to load driver: iris
libGL error: MESA-LOADER: failed to open swrast: /home/geodev/anaconda3/envs/geocomp/lib/python3.8/site-packages/matplotlib/…/…/…/libstdc++.so.6: version `GLIBCXX_3.4.29’ not found (required by /usr/lib/dri/swrast_dri.so) (search paths /usr/lib/dri)
libGL error: failed to load driver: swrast

I’ve not made any changes to the drivers manually and am on the stable branch.

Thank you for reading this far and if you can either point me to documentation or a post that can help, or perhaps offer a solution, that would be fantastic. If not no worries, thank you anyway :pray:

UPDATES after more searching (the forum suggested I don’t do multiple messages so I’m grouping them here):

Update 1:
I’ve checked and I have the drivers needed (I think):

/usr/lib/dri/iris_dri.so
and
/usr/lib/dri/swrast_dri.so

I don’t know if this is useful information though.

Update 2:
So I wondered if the error was with my python env rather than my install of Manjaro but this post indicates that:

This text is printed because you are using an old distro with some hardware and/or driver mismatch and the text is printed not by the Anaconda Distribution but by your linux distribution.

As mentioned in that post, the plots still display, but as the message states it’s an error and not a warning I’m still trying to fix it.

Update 3:
Pasting in a separate message as it’s a different approach, could this be the solution?

possible solution?

According to online information, there is a problem with the libstdc++.so file in Anaconda (I use this commercial python distribution). It cannot be associated with the driver of the system, so we removed it and used the libstdc++ that comes with Linux. so creates a soft link there.
Execute the following code in the shell

#Enter the storage location of Anaconda libstdc++

cd /home/sunqi/.pyenv/versions/anaconda3-4.4.0/lib/ 
mkdir backup  #Create a new folder to keep the original libstdc++
mv libstd* backup  # Put all libstdc++ files into the folder, including soft links
#Copy the c++ dynamic link library of the system here
cp /usr/lib/x86_64-linux-gnu/libstdc++.so.6  ./
ln -s libstdc++.so.6 libstdc++.so
ln -s libstdc++.so.6 libstdc++.so.6.0.19

Update 4:
update 3 above appears to have solved the problem, so I’m thinking this might be an issue with Anaconda rather than Manjaro, and until that’s fixed I’m going to have to fix each python env with this procedure.

I’m going to leave this here for future reference, but I’d be interested to know if anyone else using anaconda on manjaro is having the same issue?

3 Likes

Yes, I was having the same issue after install the lastest Anaconda, and this solve the problem perfectly. More over I also use Anaconda, same release as in Manjaro, on a Debian and this issue did not came up.

I have recently switched away from Manjaro (because I don’t like pamac and the fact that the manjaro team strongly encourages us to use pamac instead of pacman), so I’m now on vanilla arch.
I’m using miniconda and have not seen this issue at all since switching away from manjaro.

I don’t know for sure what the issue was but I’m no longer having it.