Hi! Sorry for my late reply. I preload libGLX_mesa.so.0 , and then run the code on the arm machine is ok. I tried to debug it, and then I found something different. The parameter of __glXLookupVendorByName is NVIDIA instead of mesa, it will dlopen libGLX_nvidia.so.0, but my Graphics Card is AMD, only IibGLX_mesa.so.0 can be found locally, so __glXLookupVendorByName failed.
(gdb) b libglxmapping.c:574 Breakpoint 4 at 0xfffff3a993d0: file ../../../src/GLX/libglxmapping.c, line 574. (gdb) r [...] Thread 1 "python" hit Breakpoint 4, __glXLookupVendorByScreen (dpy=dpy@entry=0xaaaaab1f8de0, screen=screen@entry=0) at ../../../src/GLX/libglxmapping.c:574 (gdb) p name $11 = 0xffffe0006330 "nvidia" (gdb) b libglxmapping.c:430 Breakpoint 5 at 0xfffff3a97f74: file ../../../src/GLX/libglxmapping.c, line 430. (gdb) r [...] Thread 1 "python" hit Breakpoint 5, __glXLookupVendorByName (vendorName=0xffffe0006110 "nvidia") at ../../../src/GLX/libglxmapping.c:430 (gdb) p filename $12 = 0xaaaaab1ecc40 "libGLX_nvidia.so.0" (gdb) I tried to continue debug, but I didn't find why filename is nvidia. If you could please shed some light on this topic, I would really appreciate it. Thank you in advance. BRs //Zongli