NvEglRenderer can't running as root user

Hi:
I got an error when I execute the following code as root user:

No protocol specified
[ERROR] (app/src/nv/classes/NvEglRenderer.cpp:98) Error in opening display
[ERROR] (app/src/nv/classes/NvEglRenderer.cpp:154) Got ERROR closing display
2021-03-10 16:15:23:618986 ERROR [app/src/V4l2Camera.cpp:727] Failed to create EGL renderer

if (setenv(“DISPLAY”, “:0”, 1)) {
LOGINFO(TAG, “set env DISPLAY fail”);
}

getScreenInfo(mScreenWidth, mScreenHeight, mBpp);
mNvOsdCtx = nvosd_create_context();
mRenderer = NvEglRenderer::createEglRenderer(“renderer0”, mScreenWidth, mScreenHeight, 0, 0);
if (!mRenderer) {
LOGERR(TAG, “Failed to create EGL renderer”);
rval = -1;
} else {
mRenderer->setFPS(50 /* mRenderFps */);
}

Hi,
Please refer to
5.2. Running X Programs as root - Linux Security Cookbook [Book]

or try

$ sudo apt-get install xvfb
$ Xvfb :1 &
$ export DISPLAY=:1