2009-04-20 90 views
5

मैं एमआईपीएस के लिए संकलित मोनो को स्थिर रूप से पार करने की कोशिश कर रहा हूं। मैं मोनो को संकलित करने में सक्षम हूं, लेकिन यह हमेशा इसकी निर्भरता से गतिशील रूप से जुड़ा हुआ है, भले ही मैं कंपाइलर को स्थिर निर्दिष्ट करता हूं।uClibc का उपयोग कर एमआईपीएस 64 के लिए कोई भी मोनो संकलित करता है?

मैंने एक परीक्षण कार्यक्रम लिखा और मैं इसे अपने टूलचेन के साथ स्थिर रूप से संकलित करने और इसे लक्षित प्लेटफॉर्म पर चलाने में सक्षम हूं। मुझे यकीन नहीं है कि मुझे कुछ याद आ रहा है या यदि यह संभव नहीं है। मैंने buildroot का उपयोग करके अपना टूलचैन बनाया।

संपादित

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

मैं अपने पर्यावरण चर पोस्ट कर सकता हूं और आवश्यकता होने पर कमांड कॉन्फ़िगर कर सकता हूं।

उत्तर

1

ठीक है, यह कुछ समय हो गया है जब मैंने कोशिश की, लेकिन मैं जो कुछ सीखा वह रिपोर्ट करना चाहता था। एक के लिए, मुझे पता चला कि एमआईपीएस प्रोसेसर 64-बिट है और 32-बिट नहीं है जैसे कि मुझे शुरू में एम्बेडेड डिवाइस के लिए बताया गया था जिसे मैं लक्षित कर रहा था। दूसरा, जब मैं इस पर काम कर रहा था, मोनो में अभी तक एमआईपीएस 64-बिट समर्थन नहीं था। थोड़ा सा शोध करने के बाद, मैंने देखा कि N-iX पर एक समूह एमओपीएस 64-बिट आर्किटेक्चर का समर्थन करने के लिए मोनो को पोर्ट कर रहा था जो पहले से ही किया गया था। 64-बिट पोर्ट SiCortex, Inc. नामक कंपनी के लिए किया जा रहा था और एन-आईएक्स अपने पैच को मुख्य मोनो विकास ट्रंक पर लागू करने की कोशिश कर रहा था। अधिक जानकारी के लिए आप इस forum thread को देख सकते हैं। मैंने कहा कि मैं परीक्षण के साथ मदद करना चाहता था, लेकिन मुझे कभी जवाब नहीं मिला।

जहां तक ​​स्थिर रूप से मोनो को संकलित किया गया, मैंने सीखा कि मोनो libtool का उपयोग अपने पुस्तकालयों को एक साथ जोड़ने के लिए करता है। स्थिर रूप से संकलित करने की कोशिश करने से पहले, मुझे इस टूल के बारे में अधिक जानने की आवश्यकता होगी। मैंने सीखने के बाद रुक दिया कि मोनो ने एमआईपीएस 64-बिट का समर्थन नहीं किया है। मुझे यह देखने की भी आवश्यकता होगी कि 64-बिट पोर्ट पैच कभी मोनो पर लागू हो गए हैं या नहीं।

मुझे उम्मीद है कि इससे मदद मिलती है।

1

पूरी तरह से स्थाई रूप से जुड़े मोनो प्राप्त करने के लिए आपको स्थिर पुस्तकालयों के रूप में अपनी सभी निर्भरताओं (और उनकी निर्भरता को पुनरावर्ती) बनाना होगा। केवल तभी आप वास्तव में स्थिर मोनो बना सकते हैं।

+0

मुझे डर था कि यह जवाब हो सकता है। बिल्ड्रूट में, मैंने उन पैकेजों को चुना जिन्हें मोनो टूलचैन के साथ बनाया गया था, इसलिए वे लिंकिंग के लिए टूलचैन के lib और bin फ़ोल्डर में होंगे। मैं बस किसी और के बिना सोचने की प्रक्रिया के माध्यम से जाना नहीं चाहता था। मैं इसे एक कोशिश दूंगा और चरणों को वापस रिपोर्ट करूंगा। –

0

हाल ही में स्टैक ओवरफ्लो पॉडकास्ट में से एक पर, मिगुएल ने कहा कि उन्होंने मोनो को आईफोन में पोर्ट किया है, जो मुझे लगता है कि बहुत सारे स्थिर हैं। जबकि 64-बिट नहीं, यह दिखाता है कि मोनो को बुरा काम किया जा सकता है।

+0

उन्होंने जो किया वह स्थिर रूप से एक .NET अनुप्रयोग संकलित था, जो बहुत सारे ड्रॉ बैक के साथ आता है। जो मैं खोज रहा हूं उसके करीब, लेकिन काफी नहीं। मैं मोनो रनटाइम को स्थिर रूप से संकलित करना चाहता हूं। यह एक .NET अनुप्रयोग को स्थिर रूप से संकलित करने की आवश्यकता को अस्वीकार कर देगा, क्योंकि रनटाइम उपलब्ध होगा। –

संबंधित मुद्दे