Broken Build for F# projects

abhiranjan's Avatar

abhiranjan

16 Mar, 2018 12:06 PM

Hello, since last 3 days all the builds are broken for F#. I was trying to find the problem in local codebase earlier until tried building previous successful built and it failed.

Unhandled Exception: System.IO.FileNotFoundException: Could not load file or assembly 'FSharp.Compiler.Private, Version=4.4.1.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.
        at Microsoft.FSharp.Compiler.CommandLineMain.main(String[] argv)
5>C:\Program Files (x86)\Microsoft SDKs\F#\4.1\Framework\v4.0\Microsoft.FSharp.Targets(263,9): error MSB6006: "fsc.exe" exited with code -532462766. [path_to_fsproj]
  1. 1 Posted by abhiranjan on 19 Mar, 2018 01:17 PM

    abhiranjan's Avatar

    @rune, please check. It's blocking our deployment.

  2. Support Staff 2 Posted by rune on 19 Mar, 2018 11:31 PM

    rune's Avatar

    Hi,

    That's curious -- the SDK path should be correctly configured on the build servers, so I wonder if the SDK installation directory / fsc.exe path is somehow hardcoded in your project files (e.g. not using macros)? It's hard to tell since I don't know what application you're experiencing this issue, but feel free to follow up and let me know the app name.

    On a related note: The build tools and servers were updated last week and it's likely related to that. They've just been updated again today to include the most recent bug fixes. I didn't see anything specifically related to F# as part of that update, but try and push again to see if it's been fixed! I did notice that the error message included above is referencing the targets path under C:\Program Files (x86)\Microsoft SDKs\F#\4.1\Framework\v4.0\Microsoft.FSharp.Targets, but it might be better to use C:\Program Files (x86)\Microsoft SDKs\F#\10.1\Framework\v4.0\Microsoft.FSharp.Targets - at least that folder includes the missing dependency, FSharp.Compiler.Private.

    In any case I'd highly recommend you use the F# package for tooling. It should include all the tools necessary, and will make the build process less error prone going forward by reducing the number of potential discrepancies between environments. You can find and install the relevant package right here.

    I hope this helps - would be great if you could give me a heads up if installing the tooling package helps!

    Best,
    Rune

  3. 3 Posted by abhiranjan on 20 Mar, 2018 05:34 AM

    abhiranjan's Avatar

    Agreed. F# tooling package is the right way given how unpredictable MS has been these days.

    Moved to this. Thanks.

  4. Support Staff 4 Posted by rune on 22 Mar, 2018 06:24 AM

    rune's Avatar

    Ok great, thanks for the heads up and yes I agree this is a better solution!

    Best,
    Rune

  5. rune closed this discussion on 22 Mar, 2018 06:24 AM.

Comments are currently closed for this discussion. You can start a new one.

Keyboard shortcuts

Generic

? Show this help
ESC Blurs the current field

Comment Form

r Focus the comment reply box
^ + ↩ Submit the comment

You can use Command ⌘ instead of Control ^ on Mac