You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
You will need to determine the location of these assemblies. The easiest way to locate these DLLs in a cross-platform way and
54
62
convert them to command-line arguments is to [crack an F# project file](http://fsharp.github.io/FSharp.Compiler.Service/project.html).
55
63
Alternatively you can compute SDK paths yourself, and some helpers to do this are in [the tests for FSharp.Compiler.Service.dll](https://github.com/fsharp/FSharp.Compiler.Service/blob/8a943dd3b545648690cb3bed652a469bdb6dd869/tests/service/Common.fs#L54).
56
64
@@ -66,8 +74,8 @@ arguments are always making an explicit reference, then you should _not_ include
66
74
If you do _not_ explicitly reference an FSharp.Core.dll from an SDK location, then an implicit reference will be made
67
75
to which ever version of FSharp.Core.dll your tool is running. This means your tool will almost certainly implicitly reference the FSharp.Core.dll
68
76
that is part of your application. In this case, you may either get an error that FSharp.Core.optdata and FSharp.Core.sigdata are not
69
-
found alongside FSharp.Core.dll. If you want to implicitly reference the FSharp.Core.dll you are including in your application,
70
-
then also add FSharp.Core.sigdata and FSharp.Core.optdata as two additional files to your application. When using CompileToDynamicAssembly, this problem
77
+
found alongside FSharp.Core.dll. **If you want to implicitly reference the FSharp.Core.dll you are including in your application,
78
+
then also add FSharp.Core.sigdata and FSharp.Core.optdata as two additional files to your application**. When using ``CompileToDynamicAssembly``, this problem
71
79
can also manifest itself as [a stack overflow during assembly resolution](https://github.com/fsharp/FSharp.Compiler.Service/issues/258).
72
80
73
81
Tools that dynamically compile and execute code (e.g. a ``HostedExecution.exe``) often make an implicit
@@ -76,10 +84,10 @@ reference to FSharp.Core.dll, which means they normally also include FSharp.Core
76
84
Summary
77
85
-------
78
86
79
-
In this design note we've discussed three things
87
+
In this design note we have discussed three things:
80
88
81
-
- which FSharp.Core.dll is used to run your compilation tool
82
-
- how to configure binding redirects for the FSharp.Core.dll used to run your compilation tool
83
-
- which FSharp.Core.dll and/or framework assemblies are referenced during the checking and compilations performed by your tool.
89
+
- which FSharp.Core.dll is used to run your compilation tools
90
+
- how to configure binding redirects for the FSharp.Core.dll used to run your compilation tools
91
+
- which FSharp.Core.dll and/or framework assemblies are referenced during the checking and compilations performed by your tools.
0 commit comments