यह निर्धारित करने के लिए कि एक एक्स एप्लीकेशन को किस फ़ॉन्ट की आवश्यकता है


1

मैं एक एक्स सर्वर पर एक एप्लिकेशन चलाने की कोशिश कर रहा हूं और मुझे निम्न संदेश मिल रहा है:

X Error of failed request:  BadName (named color or font does not exist)
  Major opcode of failed request:  45 (X_OpenFont)
  Serial number of failed request:  6
  Current serial number in output stream:  9

जहाँ तक मुझे सब कुछ समझ में आया है इसका मतलब यह है कि मैं जिस कंप्यूटर को प्रदर्शित करने की कोशिश कर रहा हूँ वह एक फॉन्ट नहीं है। मुसीबत यह है, मुझे नहीं पता कि क्या फ़ॉन्ट गायब है। उपरोक्त संदेश केवल प्रदर्शित किया जा रहा संदेश है।

मैं यह कैसे निर्धारित करूं कि क्या फ़ॉन्ट गायब है?

ऊपर का पालन करें:

मैंने DISPLAY वैरिएबल को लोकलहोस्ट में बदल दिया: ... और वॉचर्स के साथ जाने वाले पैकेट्स को देखा। ऐसा लगता है कि अनुरोध किए जा रहे फ़ॉन्ट का नाम "*" है। क्या इस अनुरोध के साथ कोई समस्या है? यह मुझे लगता है कि यह सिर्फ किसी भी फ़ॉन्ट को लोड करेगा। क्या मेरे फ़ॉन्ट कॉन्फ़िगरेशन में कोई समस्या है?

अधिक का पालन करें:

मैंने काम करने वाली मशीन पर पुष्टि की है कि यह "*" फ़ॉन्ट का भी अनुरोध कर रही है। मुझे यह पता है क्योंकि मैं xloadFont को gdb के साथ कॉल कर रहा हूं और नाम पैरामीटर "*" के रूप में आ रहा है।

इस मामले में क्या होने वाला है? क्या यह सचमुच किसी भी फ़ॉन्ट को वापस करने वाला है ?


वास्तव में प्रासंगिक सवाल! एक मानक स्थिति में एक उपकरण को अपने GNU / Linux वितरण विशिष्ट पैकेज विवरण में अपने फ़ॉन्ट निर्भरता को ठीक से घोषित करना चाहिए। इस तरह की परेशानी को ठीक करने के लिए, अधिकांश उपयोगकर्ता एक अनुमान लगाने की कोशिश करते हैं कि फ़ॉन्ट पैकेज इंस्टॉलेशन लूप तब तक लागू होता है जब तक कि टूल शिकायत नहीं करता ...
यवेस मार्टिन

आप मुझे बता रहे हैं कि किसी एप्लिकेशन का उपयोग करने वाले फॉन्ट को क्वेरी करने का कोई टूल नहीं है? मेरे पास एक प्रणाली है जो इस पर काम करती है, इसलिए अगर यह पता लगाने का कोई तरीका है कि यह किस फोंट का उपयोग कर रहा है, तो यह मेरे लिए काम करेगा।
CrazyCasta

तो आप अपने कार्य प्रणाली से सभी फ़ॉन्ट संकुल स्थापित कर सकते हैं। या आप libX11 कॉल पर हैंडल पाने के लिए "लेट्रेस" का उपयोग कर सकते हैं और संभवत: "X_OpenFont" विधि से पारित फ़ॉन्ट नाम ...
यवस मार्टिन

@YvesMartin क्या आप टिप्पणी कर सकते हैं कि "*" फ़ॉन्ट का अनुरोध करने वाले क्या होना चाहिए?
CrazyCasta

यदि अन्य एप्लिकेशन ठीक से काम करते हैं तो मुझे लगता है कि आपके फोंट ठीक हैं। xlsfontsआउटपुट क्या है ? क्या यह जानना संभव है कि आपके सिस्टम में कौन सी एप्लिकेशन मुसीबत में है?
यव्स मार्टिन

जवाबों:


1

XLoadFont प्रलेखन के अनुसार , एक क्वेरी के साथ '*'किसी भी मिलान को वापस करना चाहिए Font

ltraceडंप पुस्तकालयों में कॉल करता है stderr। यदि आप ltraceआउटपुट को सही और विफल निष्पादन के लिए तुलना करते हैं , तो आपको यह अनुमान लगाना चाहिए कि कार्य प्रणाली से किस फ़ॉन्ट का उपयोग किया गया है।

एक विकल्प आउटपुट xlsfontsऔर fc-listकमांड्स की तुलना करना भी है । संदेह के मामले में, fc-cache -fvयदि कैश को दूषित किया गया है, तो इनवॉइस करने से मदद मिल सकती है।


उफ़, मैं यहाँ इसका उल्लेख करना भूल गया। मुद्दा यह था कि gentoo पर font.alias फाइलों की शुरुआत में यह "टिप्पणी" है! " या तो यह एक वैध टिप्पणी (मेरा अनुमान) नहीं है, या इसे एक टिप्पणी के रूप में नहीं माना जा रहा है। मैं उस लाइन को बाहर ले जाता हूं और यह सब काम करता है। हालांकि मदद के लिए धन्यवाद, ltrace की आपकी चाल मुझे gdb के बारे में सोचने के लिए मिली, जो कि मैंने इसे कैसे समझ लिया था: "*"।
क्रेजीकैस्टा

तो आपके मामले में, मुझे लगता है xlsfontsऔर fc-listएक प्रासंगिक त्रुटि संदेश के साथ विफल हो गया होगा, है ना? यदि ऐसा है, तो मुझे लगता है कि आपने मेरे द्वारा बताए गए मुद्दे के निदान के लिए एक उचित तरीके के रूप में मेरे उत्तर को स्वीकार कर सकते हैं
यवेस मार्टिन

नहीं, xlsfontsमेरी मशीन पर मौजूद नहीं है और fc-listजहाँ तक मैं बता सकता हूँ कोई त्रुटि नहीं दिखती है। यह "फाइलनाम: सूचना" के एक स्वर को प्रिंट करता है।
CrazyCasta
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.