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
@@ -8,13 +8,10 @@ The compiler is normally compiled as a set of .NET 4.0 components. The compiler
8
8
**Before we start, are sure you're in the right place?**
9
9
10
10
* To get a free F# environment for Windows, go to[fsharp.net](http://fsharp.net).
11
-
* To get a free F# environment for Linux or Mac, go to[fsxplat.codeplex.com](http://fsxplat.codeplex.com).
12
11
* To learn what F# is and why it's interesting, go to[fsharp.net](http://fsharp.net) or[tryfsharp.org](http://tryfsharp.org).
13
12
* If you want to to use F# in Visual Studio 2010 (R) or Visual Studio 2012 (R), go to[fsharp.net](http://fsharp.net).
14
13
* Looking for F# coding samples? Go to[fsharp.net](http://fsharp.net) or[tryfsharp.org](http://tryfsharp.org) or[fssnip.net](http://fssnip.net). While the code has its nice points, it is not a model F# codebase and should not be used as guidance for F# coding style - there are plenty of things we would change if we had all the time in the world.
15
14
16
-
To emphasize, this distribution should not be seen as a way to "get" an F# compiler for immediate use. For that you're better going to[fsharp.net](http://fsharp.net) or[fsxplat.codeplex.com](http://fsxplat.codeplex.com)
17
-
18
15
**License:** subject to terms and conditions of the Apache License, Version 2.0. A copy of the license can be found in the License.html file at the root of this distribution. By using this source code in any fashion, you are agreeing to be bound by the terms of the Apache License, Version 2.0. You must not remove this notice, or any other, from this software.
19
16
20
17
**Questions?** If you have questions about the source code, please ask at the[F# Open Source Google Group](http://groups.google.com/group/fsharp-opensource). Please do not ask the F# team at Microsoft for help with this source code: they like to be friendly, but they are very busy working on improving F# and need to focus on that.
@@ -23,15 +20,14 @@ To emphasize, this distribution should not be seen as a way to "get" an F# compi
23
20
24
21
**Copyright:** Copyright 2002-2012 (c) Microsoft Corporation.
25
22
26
-
27
23
##What do I get when I compile?
28
24
29
25
When you build the compiler using the standard instructions below, you get`fsc.exe`,`fsi.exe`,`FSharp.Core.dll`,`FSharp.Compiler.dll` and some related DLLs.
30
26
31
27
The compiler binaries produced are "private" and strong-named signed with a test key (`src\fsharp\test.snk`). They use CLI assembly version nunmber**2.9.9.999**. You can place these components in the GAC but they will not replace the components used by normal Visual Studio or normal F# programs.
32
28
33
29
34
-
##Building Everything
30
+
##Building Everything for .NET 2.0 and 4.0 with msbuild/build
35
31
36
32
To just build everything use:
37
33
```
@@ -42,12 +38,14 @@ If on Mono, use 'xbuild' instead of 'msbuild'
42
38
43
39
##Step by step - Building a Proto Compiler
44
40
41
+
If you prefer to do things the slow way, then this is step 1:
The binaries are placed in`Debug\sl5-compiler`,`Release\sl5-compiler`,`Debug\sl5-compiler` and/or`Release\sl5-compiler`. A custom`FSharp.Core.dll` is used for this configuration, be sure to reference it rather than any other`FSharp.Core.dll` for Silverlight. You may have to edit your project file by hand to ensure you get exactly the right reference to`FSharp.Core.dll`.
91
+
Here**net20** gives a runtime for .NET 2.0-3.5,**mono21** fives a runtime for MonoAnrdoid and MonoTouch,
92
+
**sl3-wp** gives a runtime for Windows Phone 7, and**sl5** gives a runtime for Silverlight 5.
98
93
94
+
To build these libraries you may need the corresponding tools installed (e.g. MonoAndroid or the Silverlight tools)
99
95
100
-
##Building the F# core library for alternative CLI/.NET/CIL implementations
Here**net20** gives a runtime for .NET 2.0-3.5,**sl3-wp** gives a runtime for Windows Phone 7, and**sl5** gives a runtime for Silverlight 5.
115
-
116
-
117
107
##Steps - Building F# Core Unit Tests for .NET 4.x (optional)
118
108
119
109
This uses the proto compiler to build the unit tests that check some parts of`FSharp.Core.dll` and`FSharp.Compiler.dll`. There is also another set of tests under`tests\fsharp`.
@@ -137,18 +127,18 @@ cd ..\tests\fsharp\core
137
127
The results file will contain one entry for each test directory, plus any reported errors.
However, this is not recommended except in the rare case you are adding extra functionality to`FSharp.Core` - it is better to just continue to run with the`FSharp.Core` that comes with Visual Studio 2012.
167
157
168
158
159
+
169
160
##Preparing for inclusion in Mono
170
161
171
162
Building for the**mono20** and**mono40** frameworks gives strong-named, delay-signed assemblies with the`msfinal.pub` key and standard version numbers such as**2.0.0.0**,**2.3.0.0**,**4.0.0.0** and**4.3.0.0**. You complete the signing of these assemblies using[http://github.com/fsharp/fsharp/raw/master/mono.snk](http://github.com/fsharp/fsharp/raw/master/mono.snk). These assemblies will not run if you already have a version of them installed in your GAC (e.g. if you have Visual Studio 2012).
@@ -213,67 +204,6 @@ del /q FSharp.Core.dll
213
204
```
214
205
215
206
216
-
##Some alternative Steps - Building for .NET 2.0 profile