自動ビルドスクリプトを設定しようとしているMonotouchiPadアプリケーションがあります。mdtoolを使おうとしていますが、壁にぶつかったようです。MonoDevelop GUIを使用してソリューションをビルドすると、正常にビルドされます。ただし、ソリューションをクリーンアップし、mdtoolを使用してビルドすると、不明なファイルのnull参照例外に関する例外が発生します。
私はここ数時間グーグルで回っています。Stack Overflowでいくつかのリードを見つけたと思いましたが、それらはすべて異なる状況のようです。UIでのビルドの成功と、CLIでの失敗についてはあまりありません。
ここにいくつかの出力があります:
Performing main compilation...
Updating CodeBehind files
ERROR [2011-06-03 11:27:52Z]: Error generating code for xib file '/Users/Me/Documents/Code/MyApp/MainWindow.xib'
System.NullReferenceException: Object reference not set to an instance of an object at MonoDevelop.DesignerSupport.CodeBehindWriter.<get_OpenFiles>m__21 () [0x00000] in <filename unknown>:0
at MonoDevelop.Ide.DispatchService.GuiSyncDispatch (MonoDevelop.Ide.MessageHandler cb) [0x00000] in <filename unknown>:0
at MonoDevelop.DesignerSupport.CodeBehindWriter.get_OpenFiles () [0x00000] in <filename unknown>:0
at MonoDevelop.DesignerSupport.CodeBehindWriter.Write (System.CodeDom.CodeCompileUnit ccu, FilePath path) [0x00000] in <filename unknown>:0
at MonoDevelop.MacDev.XibCodeBehind.GenerateDesignerCode (MonoDevelop.DesignerSupport.CodeBehindWriter writer, MonoDevelop.Projects.ProjectFile xibFile, MonoDevelop.Projects.ProjectFile designerFile) [0x00000] in <filename unknown>:0
at MonoDevelop.MacDev.MacBuildUtilities.UpdateCodeBehind (IProgressMonitor monitor, MonoDevelop.MacDev.XibCodeBehind generator, IEnumerable`1 items) [0x00000] in <filename unknown>:0
私が実行しているコマンドは次のようになります。
/Applications/MonoDevelop.app/Contents/MacOS/mdtool -v build "--configuration:Release|iPhone" "/Users/Me/Documents/Code/MyApp/MyApp.sln"
そしてそれを徹底的に保つために、ここに私のバージョンがあります:
OS X: 10.6.7
XCode: 3.2.6
iOS SDK: 4.3
Mono: 2.10.2
MonoDevelop: 2.4.2
MonoTouch: 4.0.3
更新(2011年6月7日):
別の方法として、私はやってみmdtool generate-makefiles
ました。それは人が期待するすべてのものを作成し、./configure
適切に実行されましたが、make
かなり惨めに失敗しました。誰かが何か考えを持っているなら、私はこの問題を解決したいと思います。