GLX एक्सटेंशन xvfb के साथ ठीक से काम नहीं कर रहा है


15

मेरे पास एक Ubuntu 14.04 सिस्टम है जिसमें निम्नलिखित पैकेज स्थापित हैं:

libegl1-mesa:amd64
libegl1-mesa-drivers:amd64
libgl1-mesa-dri:amd64
libgl1-mesa-dri:i386
libgl1-mesa-glx:amd64
libgl1-mesa-glx:i386
libglapi-mesa:amd64
libglapi-mesa:i386
libgles2-mesa:amd64
libglu1-mesa:amd64
libopenvg1-mesa:amd64
libwayland-egl1-mesa:amd64
mesa-utils
xvfb

मैं xvfb के तहत एक एप्लिकेशन शुरू करना चाहता हूं। मैं सबसे पहले xvfb शुरू करता हूं:

$ Xvfb :1 -screen 0 1024x768x24 +extension GLX +render -noreset >> xsession.log 2>&1 &

और फिर xvfb लॉग फ़ाइल की जाँच करें:

Initializing built-in extension Generic Event Extension
Initializing built-in extension SHAPE
Initializing built-in extension MIT-SHM
Initializing built-in extension XInputExtension
Initializing built-in extension XTEST
Initializing built-in extension BIG-REQUESTS
Initializing built-in extension SYNC
Initializing built-in extension XKEYBOARD
Initializing built-in extension XC-MISC
Initializing built-in extension SECURITY
Initializing built-in extension XINERAMA
Initializing built-in extension XFIXES
Initializing built-in extension RENDER
Initializing built-in extension RANDR
Initializing built-in extension COMPOSITE
Initializing built-in extension DAMAGE
Initializing built-in extension MIT-SCREEN-SAVER
Initializing built-in extension DOUBLE-BUFFER
Initializing built-in extension RECORD
Initializing built-in extension DPMS
Initializing built-in extension Present
Initializing built-in extension DRI3
Initializing built-in extension X-Resource
Initializing built-in extension XVideo
Initializing built-in extension XVideo-MotionCompensation
Initializing built-in extension SELinux
Initializing built-in extension GLX

जो कोई त्रुटि नहीं दिखाता है। इसके अलावा, ऐसा लगता है कि GLX को ठीक से लोड किया गया है। अब, अगर मैं के साथ सर्वर की जाँच करें

$ glxinfo -display :1

मुझे मिला

name of display: :1
Xlib:  extension "GLX" missing on display ":1".
...
Error: couldn't find RGB GLX visual or fbconfig
Xlib:  extension "GLX" missing on display ":1".
...
Error: couldn't find RGB GLX visual or fbconfig

Xlib:  extension "GLX" missing on display ":1".
...

वास्तव में, जो एप्लिकेशन मैं इस सर्वर पर शुरू करना चाहता हूं और जिसे GLX की आवश्यकता नहीं है।

कई प्रलेखन पृष्ठों और मंचों की जाँच करने के बाद, मुझे कोई सुराग नहीं है कि यहाँ क्या गलत हो रहा है। अगर GLX एक्सटेंशन को सही तरीके से लोड नहीं किया गया तो X सर्वर लॉग फाइल में कोई त्रुटि क्यों नहीं दिखती है? क्या मुझे जाँच करनी चाहिए?


Xvfb के विकी पृष्ठ [1] में यह कहा गया है: "वास्तविक प्रदर्शन सर्वर के विपरीत, Xvfb आधुनिक X11 एक्सटेंशन जैसे कंपोजिंग, रैंडर या GLX का समर्थन नहीं करता है। Xdummy एक नया विकल्प है जो इन एक्सटेंशनों का समर्थन करता है और साथ ही Xvfb जैसी कार्यक्षमता प्रदान करता है। । " [१] en.wikipedia.org/wiki/Xvfb
alpert

@alpertek आपको एक उत्तर के रूप में पोस्ट करना चाहिए। GLX को आम तौर पर उपयोगी होने के लिए एक चिप-विशिष्ट ड्राइवर की आवश्यकता होती है।
XTL

3
उपरोक्त टिप्पणियां सही नहीं हैं। हमने कई सालों तक ओपनस्वाड टेस्ट सूट में Xvfb पर GLX का इस्तेमाल किया। Bugzilla.redhat.com/show_bug.cgi?id=904851
उज्ज्वल

खैर इस बीच उस टिप्पणी को विकि में हटा दिया गया था। en.wikipedia.org/w/…
व्लादिमीर tunát

जवाबों:


2

Xvfb (X वर्चुअल फ्रेम बफर) एक Xsever वर्चुअल है जो वास्तविक हार्डवेयर त्वरण का समर्थन नहीं करता है।

आपको virtualGL के साथ स्पॉन्ग ओपन कॉल की आवश्यकता है , असली 3D Xserver के माध्यम से वास्तविक कॉल को कांटा और Xvfb या 2d Xserver को 2d रेंडरिंग।

$ Xvfb :1 -screen 0 1024x768x24 +extension GLX +render -noreset >> xsession.log 2>&1 &
$ env DISPLAY=:1 vglrun glxinfo 

हालांकि यह वास्तविक हार्डवेयर त्वरण का समर्थन नहीं करता है, यह मेसा (सॉफ्टवेयर GLX) का समर्थन करता है, ठीक है - मैंने कुछ समय पहले (2018 में भी) चेक किया था। तो आप एक असली 3 डी Xserver का उपयोग करने की जरूरत नहीं है , हालांकि यह एक विकल्प है।
dirkt

1

मेरी लॉग फ़ाइलों में मुझे सब कुछ ठीक-ठाक दिखाई दे रहा है, बिल्ट-इन एक्सटेंशन GLX के इनिशियलाइज़िंग तक तो ठीक है, लेकिन फिर इसके बाद है

The XKEYBOARD keymap compiler (xkbcomp) reports:
> Internal error:   Could not resolve keysym XF86AudioMicMute
Errors from xkbcomp are not fatal to the X server

Xkbcomp के साथ प्रमुख मुद्दा हो सकता है?


1

Xvfb के विकी पृष्ठ में यह कहा गया है: "वास्तविक डिस्प्ले सर्वर के विपरीत, Xvfb कंपोज़िटिंग, रैंडर या GLX जैसे आधुनिक X11 एक्सटेंशन का समर्थन नहीं करता है। Xdummy एक नया विकल्प है जो इन एक्सटेंशनों का समर्थन करता है और साथ ही Xvfb जैसी कार्यक्षमता प्रदान करता है।"


अधिक जानकारी के लिए, Xdummy -h(आर्क लिनक्स पर x11vnc 0.9.13-6 के रूप में कोई मैनपेज नहीं है) का उपयोग करें।
लेकेनस्टेयिन

7
यह उत्तर सही नहीं है। हमने Xvfb पर GLX का उपयोग कई वर्षों तक हेडलेस ओपनस्कैड टेस्ट सूट के लिए किया। Bugzilla.redhat.com/show_bug.cgi?id=904851 जब से विकी अपडेट किया गया है और उस लाइन को हटा दिया गया है।
उज्ज्वल
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.