[Mono-dev] Building 4.2 on OS X

Jonathan Mitchell jonathan at mugginsoft.com
Tue Nov 10 09:43:48 UTC 2015


I can build Mono 4.0 64bit on OS X 10.10 without issue.
The 4.2 build dies:

./../../external/referencesource/System.Data.SqlXml/System/Xml/Xsl/Xslt/Scripts.cs(117,48): error CS0117: System.CodeDom.Compiler.CodeDomProvider' does not contain a definition forGetCompilerInfo'
./../../class/lib/basic/bare/System.dll (Location of the symbol related to previous error)

My installed Mono is 4.0.
My build script says:

./autogen.sh --prefix=$PREFIX --disable-nls
make
make install

The error call site is here:
=========================
System.Xml.Xsl.Xslt.ScriptClass
=========================
       public ScriptClass GetScriptClass(string ns, string language, IErrorHelper errorHelper) {
#if CONFIGURATION_DEP
           CompilerInfo compilerInfo;
           try {
               compilerInfo = CodeDomProvider.GetCompilerInfo(language); // error CS0117: System.CodeDom.Compiler.CodeDomProvider' does not contain a definition forGetCompilerInfo'
               Debug.Assert(compilerInfo != null);
           }
           catch (ConfigurationException) {
               // There is no CodeDom provider defined for this language
               errorHelper.ReportError(/*[XT_010]*/Res.Xslt_ScriptInvalidLanguage, language);
               return null;
           }

           foreach (ScriptClass scriptClass in scriptClasses) {
               if (ns == scriptClass.ns) {
                   // Use object comparison because CompilerInfo.Equals may throw
                   if (compilerInfo != scriptClass.compilerInfo) {
                       errorHelper.ReportError(/*[XT_011]*/Res.Xslt_ScriptMixedLanguages, ns);
                       return null;
                   }
                   return scriptClass;
               }
           }

           ScriptClass newScriptClass = new ScriptClass(ns, compilerInfo);
           newScriptClass.typeDecl.TypeAttributes = TypeAttributes.Public;
           scriptClasses.Add(newScriptClass);
           return newScriptClass;
#else
       return null;
#endif
       }

Thanks

J














More information about the Mono-devel-list mailing list