c# - संकलित मोनो लापता डिफ़ॉल्ट.NET लाइब्रेरी-System.Object परिभाषित या आयात नहीं किया गया है




macos mono (6)

अगर वहाँ एक चेतावनी के समान है:

/lib/mono/4.5/Microsoft.Common.targets:  warning : Unable to find framework corresponding to the target framework moniker '.NETFramework,Version=v2.0'. Framework assembly references will be resolved from the GAC, which might not be the intended behavior.

आप कमांड लाइन पर .NET फ्रेमवर्क को ओवरराइड कर सकते हैं:

xbuild /p:TargetFrameworkVersion="v4.0"

आप अपना समाधान बदल सकते हैं:

<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>

मैंने यहाँ स्थित गाइड के बाद OS X Mavericks पर मोनो संकलित किया है: http://www.mono-project.com/docs/compiling-mono/mac/

अब जब मैं अपने एप्लिकेशन को xbuild का उपयोग करके संकलित करता हूं तो मुझे निम्नलिखित त्रुटियां मिल रही हैं:

CSC: error CS0518: The predefined type `System.Object' is not defined or imported
CSC: error CS0518: The predefined type `System.ValueType' is not defined or imported
CSC: error CS0518: The predefined type `System.Attribute' is not defined or imported
CSC: error CS0518: The predefined type `System.Int32' is not defined or imported
CSC: error CS0518: The predefined type `System.UInt32' is not defined or imported
CSC: error CS0518: The predefined type `System.Int64' is not defined or imported
CSC: error CS0518: The predefined type `System.UInt64' is not defined or imported
CSC: error CS0518: The predefined type `System.Single' is not defined or imported
CSC: error CS0518: The predefined type `System.Double' is not defined or imported
CSC: error CS0518: The predefined type `System.Char' is not defined or imported
CSC: error CS0518: The predefined type `System.Int16' is not defined or imported
CSC: error CS0518: The predefined type `System.Decimal' is not defined or imported
CSC: error CS0518: The predefined type `System.Boolean' is not defined or imported
CSC: error CS0518: The predefined type `System.SByte' is not defined or imported
CSC: error CS0518: The predefined type `System.Byte' is not defined or imported
CSC: error CS0518: The predefined type `System.UInt16' is not defined or imported
CSC: error CS0518: The predefined type `System.String' is not defined or imported
CSC: error CS0518: The predefined type `System.Enum' is not defined or imported
CSC: error CS0518: The predefined type `System.Delegate' is not defined or imported
CSC: error CS0518: The predefined type `System.MulticastDelegate' is not defined or imported
CSC: error CS0518: The predefined type `System.Void' is not defined or imported
CSC: error CS0518: The predefined type `System.Array' is not defined or imported
CSC: error CS0518: The predefined type `System.Type' is not defined or imported
CSC: error CS0518: The predefined type `System.Collections.IEnumerator' is not defined or imported
CSC: error CS0518: The predefined type `System.Collections.IEnumerable' is not defined or imported
CSC: error CS0518: The predefined type `System.IDisposable' is not defined or imported
CSC: error CS0518: The predefined type `System.IntPtr' is not defined or imported
CSC: error CS0518: The predefined type `System.UIntPtr' is not defined or imported
CSC: error CS0518: The predefined type `System.RuntimeFieldHandle' is not defined or imported
CSC: error CS0518: The predefined type `System.RuntimeTypeHandle' is not defined or imported
CSC: error CS0518: The predefined type `System.Exception' is not defined or imported

जब मैंने OS XI पर मोनो इंस्टॉलर का उपयोग किया तो इनमें से कोई भी त्रुटि नहीं हुई।

(मैं मोनो का निर्माण कर रहा हूं क्योंकि मैं .NET फ्रेमवर्क में कार्यक्षमता जोड़ रहा हूं जो पूरा नहीं हुआ था)

ऑटोजेन चलाने का परिणाम ।sh: https://gist.github.com/Geesu/149332f3f877c891d387 रनिंग का परिणाम: https://gist.github.com/Geesu/4296f7d4c6c368d6986d


इंस्टॉलर और होम बिल्ड के साथ अंतर यह तथ्य है कि इंस्टॉलर "जानता है" जहां परिवाद स्थित हैं, जबकि संकलित एक न। इसलिए जब तक आप अपने ऐप को संकलित करते समय उस स्थान को इंगित नहीं करते हैं, तब तक आपकी समस्या उत्पन्न हो जाएगी (मूल रूप से कोई सिस्टम डीएलएस पाया नहीं गया है)। मैं mcs दस्तावेज़ीकरण देखने की सलाह दूंगा , और पथ निर्दिष्ट करूँगा। (संपादित करें: "-L" पैरामीटर के साथ इसे करना चाहिए।)


जब मैंने लाइनें हटा दीं तो मेरा प्रोजेक्ट संकलित होने लगा

<NoStdLib>true</NoStdLib>
<NoConfig>true</NoConfig>

इसमें से।


मुझे नहीं पता कि यह कैसे तार्किक रूप से वापस आ सकता है, लेकिन कुछ घंटों के लिए इसे ठीक करने की कोशिश करने के बाद,

Unload .net standards project

क्योंकि मुझे सटीक समस्या नहीं हो रही थी और मैंने फैसला किया

reload it again

बूम ... यह काम किया ... अभी भी नहीं जानता कि इसके पीछे तार्किक कारण क्या है। अगर कोई करता है, तो कृपया नीचे टिप्पणी करें।


मैं डेबियन अनस्टेबल (सिड) पर YouCompleteMe / OmniSharpServer का निर्माण करते हुए इस मुद्दे पर भाग गया। क्या हो रहा है मोनो का स्थापित संस्करण v4.5.2 फ्रेमवर्क असेंबलियों को स्थापित नहीं करता है, जो कि उस समाधान / परियोजना का निर्माण करते समय संकलक चूक है।

वर्कअराउंड लक्षित फ्रेमवर्क संस्करण को निर्दिष्ट करना है जैसा कि आप उपलब्ध हैं, या एक को लक्षित किया जा रहा है (जैसे आपके कस्टम संकलन के दौरान) उपलब्ध कराएं।

कैट जिमरमैन की प्रतिक्रिया उपयुक्त है।


मैंने इस समस्या को हल किया। मैं Mavericks इंस्टॉलर को पुन: निर्देशित करने के बाद अद्यतनों की जांच करना भूल गया, और मोनो और Xamarin.Android दोनों के लिए स्थिर चैनल अपडेट उपलब्ध थे। एक बार जब मैंने उन्हें स्थापित किया, तो सब कुछ ठीक था।





xbuild