Is there a display running on the Jetson? If so, then you need to export the “DISPLAY” variable before starting the program. If you are running remotely without the Jetson itself performing the display, then you have to (A) enable forwarding in the ssh command (e.g., either of “ssy -Y ...” or “ssh -X ...”), and (B) have the host PC set up with the EGL support.
What people often do not realize is that when you remote display from the Jetson to the host PC, that it is the PC’s GPU doing the graphics work (or CUDA), and thus the Jetson is no longer doing this, so whatever requirements there are, this then falls on the host PC.
An alternative is to run a virtual X server on the Jetson, and then export the “DISPLAY” environment variable to it, without using ssh forwarding. The application won’t care that the server is virtual and that there is no monitor, it’ll still work. Better yet, you can then use remote desktop software from any computer to view the Jetson’s virtual desktop if you so desire. All the work will be from the Jetson’s GPU. Sorry, I have no recommendations on a particular virtual desktop server/client.
Hi, I figured it won’t work on headless mode but couldn’t understand why so thanks a lot for the explanation. I had to move to head mode to make it work, everything’s working fine now. Thank you.