I have a Monotouch iPad application for which I am trying to set up an automated build script. I am attempting to use mdtool, but I seem to have hit a wall. If I build the solution using the MonoDevelop GUI, it builds successfully. However, if I clean the solution, and build using mdtool, it get an exception about a null reference exception in an unknown file.
I've googled around for the last couple of hours. I thought I found a couple of leads here on Stack Overflow, but they all seem to be different situations. Not much out there about successful building in the UI and a failure on the CLI.
Here is some output:
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
The command that I am executing looks like this:
/Applications/MonoDevelop.app/Contents/MacOS/mdtool -v build "--configuration:Release|iPhone" "/Users/Me/Documents/Code/MyApp/MyApp.sln"
And just to keep it thorough, here are my versions:
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
Update (6/7/2011):
As an alternative, I tried doing mdtool generate-makefiles
. It created everything one would expect, and ./configure
ran properly, but make
failed pretty miserably. I'd love to solve this problem if anyone has any thoughts.