[MonoDevelop] MonoDevelop's Build tab question

Vasili I. Galchin vigalchin at gmail.com
Mon Mar 15 02:17:33 EDT 2010


PS I have done several experiments ... when MonoDevelop is hung, if I
run fsc from the command line then MonoDevelop becomes unhung
(compiling any file by calling fsc from CLI will unhang MonoDevelop).

PS1 Based on the code in FSharpBindingCompilerManager.cs and
LoggingService.LogInfos I have put in DoCompilation:

LoggingService.LogInfo("yoh adrian ..... " + compilerName);  // WNH
LoggingService.LogInfo(compilerArgs);   // WNH
LoggingService.LogInfo(working_dir);    // WNH

                        if (gacRoots.Count > 0) {
                                // Create the gac prefix string
                                string gacPrefix = string.Join ("" +
Path.PathSeparator, gacRoots.ToArray ());
                                string oldGacVar =
Environment.GetEnvironmentVariable ("MONO_GAC_PREFIX");
                                if (!string.IsNullOrEmpty (oldGacVar))
                                        gacPrefix +=
Path.PathSeparator + oldGacVar;
                                pinfo.EnvironmentVariables
["MONO_GAC_PREFIX"] = gacPrefix;
                        }

                        foreach (KeyValuePair<string,string> ev in envVars) {
                                if (ev.Value == null)

pinfo.EnvironmentVariables.Remove (ev.Key);
                                else
                                        pinfo.EnvironmentVariables
[ev.Key] = ev.Value;
                        }

                        pinfo.UseShellExecute = false;
                        pinfo.RedirectStandardOutput = true;
                        pinfo.RedirectStandardError = true;

LoggingService.LogInfo("KICK OFF FSC!!");  // WNH

                        MonoDevelop.Core.Execution.ProcessWrapper pw =
Runtime.ProcessService.StartProcess (pinfo, outwr, errwr, null);
LoggingService.LogInfo("Kicked off!");  // WNH
                        pw.WaitForOutput();
LoggingService.LogInfo("after wait!");  // WNH
                        int exitCode = pw.ExitCode;
                        outwr.Close();


I am quite sure that fsc CLI parms shared file has been built and an
attempt to "spawn" "mono  ..... fsc.exe ...."  by MonoDevelop has been
made! After this I can say
nothing.

PS3 I did a "mono --help" and set "--trace=all" but cannot find where
output goes! Should I use another means to monitor progress of "mono
.... .fsc.exe ....."??

On 3/15/10, Vasili I. Galchin <vigalchin at gmail.com> wrote:
> Hello,
>
>      I noticed that when I try to build a F# "script" using
> MonoDevelop that the bottom three "Build", "Rebuild", Clean" are not
> enabled("hot"), e.g. "Build Console1", "Rebuild Console1", "Clean
> Console1". This causes me to have to select "Build All". What
> condition causes MonoDevelop to enable the bottom three selections? Or
> to put it another way where in the MonoDevelop "core" source are these
> enabled??
>
> (I am trying to track down a MonoDevelop "hang" problem and I suspect
> this may be related.
>
> Thanks,
>
> Vasili
>


More information about the Monodevelop-list mailing list