[MonoDevelop] bulding a F# program

Vasili I. Galchin vigalchin at gmail.com
Tue Mar 16 02:16:41 EDT 2010


Here is what MonoDevelop generates for a CLI:

/usr/bin/fsc -o
/home/vasili/Projects/Console2/Console2/bin/Debug/Console2.exe -g
--define:DEBUG --target:exe
/home/vasili/Projects/Console2/Console2/Main.fs

On 3/16/10, Vasili I. Galchin <vigalchin at gmail.com> wrote:
> Piotr,
>
>     In /usr/bin, I already have fsc:
>
> #!/bin/sh
> exec /home/vasili/bin/mono $MONO_OPTIONS /usr/lib/mono/2.0/fsc.exe "$@"
>
> FSharpBindingCompilerManager.cs:Compile returns "/usr/bin/fsc" when
> GetCompilerName is called ... so all is cool ... it is when
> FSharpBindingCompilerManager:DoCompilation calls:
>
>  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
>
>
> Runtime.ProcessService.StartProcess that MonoDevelop gets hung. I do
> get the "Kicked off!" log message BUT not the "after wait" log
> message. "fsc" includes mono's --verbose. I get this verbose output
> when I run "fsc" from the Linux shell but not from MonoDevelop.
>
> Thanks for suggestions and help!
>
> Vasili
> ~
>
> On 3/16/10, Piotr Zurek <p.zurek at gmail.com> wrote:
>> Hi Vasili,
>>
>> On Tue, Mar 16, 2010 at 18:04, Vasili I. Galchin <vigalchin at gmail.com>
>> wrote:
>>>     As I have said in previous emails, when I try to build a F#
>>> program/script
>>>
>>> 1) I only have "Build All" as a choice, strange!
>>>
>>> 2) MonoDevelop get hung. I have to run "mono .... fsc.exe ..." from
>>> the Linux CLI to unhang it!
>>>
>>>
>>> One more interesting fact ... I can't quit these MonoDevelop instances
>>> ... I have to do "kill -9" and all result in zombie (defunct)
>>> processes. If I start MonoDevelop without attempting to do a Build and
>>> then a "kill -9" => no zombie(defunct) process!
>>
>> I don't think it is related to your problem and doubt that it may
>> actually solve it, but  for your convenience you could consider adding
>> two adding fsc and fsi scripts to your /usr/local/bin folder.
>> They should look something like that (depending on your system paths):
>>
>> #!/bin/sh
>> exec /usr/bin/mono /usr/local/src/FSharp/bin/fsc.exe $@
>>
>> and for fsi of course:
>>
>> #!/bin/sh
>> exec /usr/bin/mono /usr/local/src/FSharp/bin/fsi.exe $@
>>
>> Thanks to that you can run fsc and fsi with a single command without
>> all that typing.
>>
>> Cheers,
>> Piotr
>>
>


More information about the Monodevelop-list mailing list