Hi Zongli,
As Colin mentioned, this error is likely due to GLX indirect rendering and XQuartz on the Mac client. We had this problem a few
months ago when Mac users updated their operating system to macOS Catalina (version 10.15.7) or later, and/or upgraded to the most recent version of XQuartz (version 2.8.1 at the time), and suddenly had trouble displaying remotely-rendered graphics on their
local terminal.
The following instructions are what I sent to my colleagues on this issue back then (May 2021), hopefully they are still valid now:
1. In a terminal on your Mac, enter the following command:
defaults write org.xquartz.X11 enable_iglx -bool true
2. If you don’t have the most recent XQuartz on your system, go to https://www.xquartz.org/
and download version 2.8.1 (you may also be able to update it when prompted by your system). If you downloaded the package, mount the disk image and install the package to your computer. Then log out and log back in again.
3. On your Mac, open a terminal and connect to the remote Linux system using the ssh command such as below:
ssh -X [user]@[remote-computer] or ssh -Y [user]@[remote-computer]
4. Source SBGrid if necessary, then try to open an image using 3dmod or e2display.py.
Alternatively, you can enter the commands glxinfo or glxgears to
test and make sure you have no errors.
Hope that helps!
Best,
--Jason
It sounds like you need to enable indirect GLX (iGLX) on the client machine.
If you are using XQuartz, iGLX is disabled by default.
--
Best Regards,
Colin Gauvin
Lawrence Laboratory, Montana State University
(401) 263-0343