2009-02-06 9 views
11

छोड़ने के बिना डायरेक्टएफबी ऐप कैसे विकसित करें I एम्बेडेड प्लेटफार्म के लिए एक जीयूआई एप्लीकेशन विकसित करने की कोशिश कर रहा हूं, बिना किसी विंडोिंग के और मैं डायरेक्टएफबी के साथ ऐसा कर रहा हूं, और यह मेरी आवश्यकताओं को बहुत अच्छी तरह से उपयुक्त बनाता है।X.11 पर्यावरण

चूंकि मैं एम्बेडेड के लिए विकसित हूं, वह शक्तिशाली नहीं है, मैं वास्तव में अपने उबंटू डेस्कटॉप पर विकसित करने की कोशिश करना चाहता हूं। समस्या यह है कि फ्रेमबफर X.org के साथ विवाद कर रहा है जिससे मुझे पूरे डेस्कटॉप को छोड़ दिया जा सकता है, और मेरे परिवर्तनों के नतीजे देखने के लिए X.org बंद कर दिया गया है।

क्या कोई अच्छा फ्रेमबफर सिम्युलेटर है जो मेरी आवश्यकताओं के अनुरूप है? क्यूटी में एक क्यूवीएफबी कहा जाता है, लेकिन यह केवल क्यूटी ऐप्स विकसित करने के लिए काम करता है, और डायरेक्टएफबी के वीएनसी बैक-एंड हमेशा क्रैश होता है।

तो, कोई विचार?

उत्तर

15

डायरेक्टएफबी में एक्स 11 बैकएंड है।

$ sudo apt-get install libdirectfb-extra # for Debian and Ubuntu, anyhow 
$ cat ~/.directfbrc 
system=x11 
force-windowed

इसके अलावा, DirectFB एक एसडीएल बैकएंड है, और एसडीएल एक X11 बैकएंड है। इसके अलावा, एसडीएल में एक जीजीआई बैकएंड है, और जीजीआई के पास एक्स बैकएंड है। यही कारण है कि मैं

$ SDL_VIDEODRIVER=directfb ffplay some_movie.avi

साथ यह परीक्षण किया है और मीडिया खेल और DirectFB निपटने लेयरिंग और इनपुट के साथ एक अच्छा 640x480 खिड़की मिल थोड़ा घुमावदार है, लेकिन यह काम करना चाहिए :)

, तो मुझे यकीन है कि यह काम करता है हूँ।

+0

वास्तव में बल-विंडोड मेरे लिए काम किया। आपका बहुत बहुत धन्यवाद! –

0

आप मोबलिन की डिस्क छवि बनाने के लिए Moblin Image Creator का उपयोग कर सकते हैं, जिसे आप QEMU जैसे वीएम के अंदर चला सकते हैं। फिर आप वर्चुअल मशीन के अंदर अपने डायरेक्टएफबी एप्लिकेशन का परीक्षण कर सकते हैं।

0

आप अपने उबंटू डेस्कटॉप पर अपने एप्लिकेशन को संपादित (यानी संपादित और संकलित) कर सकते हैं, और एम्बेडेड प्लेटफॉर्म पर अपने एप्लिकेशन का परीक्षण कर सकते हैं जिसका उद्देश्य इसे चलाने के लिए है।

यदि एम्बेडेड प्लेटफ़ॉर्म नेटवर्किंग का समर्थन करता है, तो आप सीधे एनएफएस शेयर से एप्लिकेशन चलाकर अपने संपादन-संकलन-परीक्षण लूप की लंबाई को कम करने में सक्षम हो सकते हैं।

+0

यही वह है जो मैं अभी कर रहा हूं, लेकिन प्रक्रिया में बहुत अधिक समय लगता है। –

1

तीन पिछले उत्तर सभी अच्छे सुझाव हैं। मैं एपीमियंट के जवाब की कोशिश करने का सुझाव दूंगा क्योंकि यह सबसे आसान है। अपनी .directfbrc फ़ाइल सेट अप करने के बारे में अधिक जानकारी के लिए, "man directfbrc" देखें।

एक अन्य संभावना एक्स से दूसरे वर्चुअल टर्मिनल (CTRL + ALT + F1 का उपयोग करके) में स्विच करना होगा, अपना डायरेक्टएफबी प्रोग्राम चलाएं और फिर एक्स (CTRL + ALT + F7 का उपयोग करके) स्विच करें।

+0

क्या डायरेक्टएफबी हाल ही में केएमएस आधारित एक्स सामान के साथ अच्छा खेलता है? – Spudd86

1

मैं Xnest, एक अलग एक्स वातावरण जिसमें वर्तमान एक्स की एक खिड़की में चलाता है के अलावा एक chroot वातावरण के अंदर DirectFB अनुप्रयोगों (buildroot की एक शिष्टाचार के रूप लक्ष्य फाइल सिस्टम) को चलाने के लिए ephemient के समाधान का उपयोग करने के लिए आया था

$ Xnest -ac :1 & 
$ cd $TARGET_DIR # into the target file system root 
$ DISPLAY=:1 sudo chroot . usr/bin/df_neo 

इस तरह आप आश्वस्त कर सकते हैं कि न केवल आपकी डायरेक्टएफबी स्थापना सही है, बल्कि सभी आवश्यक निर्भरता chroot'ed फ़ाइल सिस्टम के अंदर स्थापित हैं।