summaryrefslogtreecommitdiff
path: root/Documentation/building
diff options
context:
space:
mode:
authorJiyoung Yun <jy910.yun@samsung.com>2017-04-13 14:17:19 +0900
committerJiyoung Yun <jy910.yun@samsung.com>2017-04-13 14:17:19 +0900
commita56e30c8d33048216567753d9d3fefc2152af8ac (patch)
tree7e5d979695fc4a431740982eb1cfecc2898b23a5 /Documentation/building
parent4b11dc566a5bbfa1378d6266525c281b028abcc8 (diff)
downloadcoreclr-a56e30c8d33048216567753d9d3fefc2152af8ac.tar.gz
coreclr-a56e30c8d33048216567753d9d3fefc2152af8ac.tar.bz2
coreclr-a56e30c8d33048216567753d9d3fefc2152af8ac.zip
Imported Upstream version 2.0.0.11353upstream/2.0.0.11353
Diffstat (limited to 'Documentation/building')
-rw-r--r--Documentation/building/debugging-instructions.md2
-rw-r--r--Documentation/building/linux-instructions.md4
-rw-r--r--Documentation/building/testing-with-corefx.md4
-rw-r--r--Documentation/building/windows-instructions.md65
4 files changed, 55 insertions, 20 deletions
diff --git a/Documentation/building/debugging-instructions.md b/Documentation/building/debugging-instructions.md
index 4c33f9af8a..72f198bde9 100644
--- a/Documentation/building/debugging-instructions.md
+++ b/Documentation/building/debugging-instructions.md
@@ -89,7 +89,7 @@ This is the full list of commands currently supported by SOS. LLDB is case-sensi
HistObjFind (histobjfind)
HistClear (histclear)
-###Aliases###
+### Aliases ###
By default you can reach all the SOS commands by using: _sos [command\_name]_
However the common commands have been aliased so that you don't need the SOS prefix:
diff --git a/Documentation/building/linux-instructions.md b/Documentation/building/linux-instructions.md
index ddd4274b83..b14ab288ce 100644
--- a/Documentation/building/linux-instructions.md
+++ b/Documentation/building/linux-instructions.md
@@ -47,7 +47,7 @@ ellismg@linux:~$ sudo apt-get install cmake llvm-3.5 clang-3.5 lldb-3.6 lldb-3.6
You now have all the required components.
-If you are using Fedora 23 or 24, then you will need to install the following packages:
+If you are using Fedora, then you will need to install the following packages:
`$ sudo dnf install llvm cmake clang lldb-devel libunwind-devel lttng-ust-devel libuuid-devel libicu-devel`
@@ -61,7 +61,7 @@ Set the maximum number of file-handles
To ensure that your system can allocate enough file-handles for the corefx build run `sysctl fs.file-max`. If it is less than 100000, add `fs.file-max = 100000` to `/etc/sysctl.conf`, and then run `sudo sysctl -p`.
-On Fedora 23 or 24:
+On Fedora:
`$ sudo dnf install mono-devel`
diff --git a/Documentation/building/testing-with-corefx.md b/Documentation/building/testing-with-corefx.md
index defc8f8e8b..a400d1426f 100644
--- a/Documentation/building/testing-with-corefx.md
+++ b/Documentation/building/testing-with-corefx.md
@@ -5,6 +5,10 @@ It may be valuable to use CoreFX tests to validate your changes to CoreCLR or ms
**NOTE:** The `BUILDTOOLS_OVERRIDE_RUNTIME` property no longer works.
+To run CoreFX tests with an updated System.Private.Corelib.dll, [use these instructions](https://github.com/dotnet/corefx/blob/master/Documentation/project-docs/developer-guide.md#testing-with-private-coreclr-bits).
+
+To build CoreFX against the updated System.Private.Corelib.dll - we need to update instructions.
+
**Replace runtime between build.[cmd|sh] and build-tests.[cmd|sh]**
Use the following instructions to test a change to the dotnet/coreclr repo using dotnet/corefx tests. Refer to the [CoreFx Developer Guide](https://github.com/dotnet/corefx/blob/master/Documentation/project-docs/developer-guide.md) for information about CoreFx build scripts.
diff --git a/Documentation/building/windows-instructions.md b/Documentation/building/windows-instructions.md
index 8ba021bbf9..d0e63270c0 100644
--- a/Documentation/building/windows-instructions.md
+++ b/Documentation/building/windows-instructions.md
@@ -4,26 +4,58 @@ Build CoreCLR on Windows
These instructions will lead you through building CoreCLR.
----------------
-#Environment
+# Environment
You must install several components to build the CoreCLR and CoreFX repos. These instructions were tested on Windows 7+.
## Visual Studio
Visual Studio must be installed. Supported versions:
-- [Visual Studio 2015](https://www.visualstudio.com/downloads/visual-studio-2015-downloads-vs) (Community, Professional, Enterprise). The community version is completely free.
-
-To debug managed code, ensure you have installed at least [Visual Studio 2015 Update 3](https://www.visualstudio.com/en-us/news/releasenotes/vs2015-update3-vs).
-
-Make sure that you install "VC++ Tools". By default, they will not be installed.
-
-To build for Arm32, you need to have [Windows SDK for Windows 10](https://developer.microsoft.com/en-us/windows/downloads) installed.
+- [Visual Studio 2015](https://www.visualstudio.com/vs/older-downloads/) (Community, Professional, Enterprise). The community version is completely free.
+- [Visual Studio 2017](https://www.visualstudio.com/downloads/) (Community, Professional, Enterprise). The community version is completely free.
+
+For Visual Studio 2015:
+* To debug managed code, ensure you have installed at least [Visual Studio 2015 Update 3](https://www.visualstudio.com/en-us/news/releasenotes/vs2015-update3-vs).
+* Make sure that you install "VC++ Tools". By default, they will not be installed.
+* To build for Arm32, Make sure that you have the Windows SDK for Windows 10 installed (or selected to be installed as part of VS installation). To explicitly install Windows SDK, download it from here: [Windows SDK for Windows 10](https://developer.microsoft.com/en-us/windows/downloads)
+
+For Visual Studio 2017:
+* When doing a 'Workloads' based install, the following are the minimum requirements:
+ * .NET Desktop Development
+ * All Required Components
+ * .NET Framework 4-4.6 Development Tools
+ * Desktop Development with C++
+ * All Required Components
+ * VC++ 2017 v141 Toolset (x86, x64)
+ * Windows 8.1 SDK and UCRT SDK
+ * VC++ 2015.3 v140 Toolset (x86, x64)
+* When doing an 'Individual Components' based install, the following are the minimum requirements:
+ * Under ".NET":
+ * .NET Framework 4.6 targeting pack
+ * .NET Portable Library targeting pack
+ * Under "Code tools":
+ * Static analysis tools
+ * Under "Compilers, build tools, and runtimes":
+ * C# and Visual Basic Roslyn Compilers
+ * MSBuild
+ * VC++ 2015.3 v140 toolset (x86, x64)
+ * VC++ 2017 v141 toolset (x86, x64)
+ * Windows Universal CRT SDK
+ * Under "Development activities":
+ * Visual Studio C++ core features
+ * Under "SDKs, libraries, and frameworks":
+ * Windows 10 SDK or Windows 8.1 SDK
+* To build for Arm32, Make sure that you have the Windows 10 SDK installed (or selected to be installed as part of VS installation). To explicitly install Windows SDK, download it from here: [Windows SDK for Windows 10](https://developer.microsoft.com/en-us/windows/downloads)
+* **Important:** You must have the `msdia120.dll` COM Library registered in order to build the repository.
+ * This binary is registered by default when installing the "VC++ Tools" with Visual Studio 2015
+ * You can also manually register the binary by launching the "Developer Command Prompt for VS2017" with Administrative privileges and running `regsvr32.exe "%VSINSTALLDIR%\Common7\IDE\msdia120.dll"`
+* **Important:** By default, the build will attempt to use VS2015 as the toolset for the build. To build using VS2017 as your toolset, you must use the "Developer Command Prompt for VS2017".
Visual Studio Express is not supported.
-##CMake
+## CMake
-The CoreCLR repo build has been validated using CMake 3.5.2.
+The CoreCLR repo build has been validated using CMake 3.7.2
- Install [CMake](http://www.cmake.org/download) for Windows.
- Add its location (e.g. C:\Program Files (x86)\CMake\bin) to the PATH environment variable.
@@ -31,7 +63,7 @@ The CoreCLR repo build has been validated using CMake 3.5.2.
following the instructions at [Adding to the Default PATH variable](#adding-to-the-default-path-variable)
-##Python
+## Python
Python is used in the build system. We are currently using python 2.7.9, although
any recent (2.4+) version of Python should work, including Python 3.
@@ -40,7 +72,7 @@ any recent (2.4+) version of Python should work, including Python 3.
The installation script has a check box to do this, but you can do it yourself after the fact
following the instructions at [Adding to the Default PATH variable](#adding-to-the-default-path-variable)
-##Git
+## Git
For actual user operations, it is often more convinient to use the GIT features built into Visual Studio 2015.
However the CoreCLR and the tests use the GIT command line utilities directly so you need to install them
@@ -51,20 +83,20 @@ for these to work properly. You can get it from
The installation script has a check box to do this, but you can do it yourself after the fact
following the instructions at [Adding to the Default PATH variable](#adding-to-the-default-path-variable)
-##PowerShell
+## PowerShell
PowerShell is used in the build system. Ensure that it is accessible via the PATH environment variable.
Typically this is %SYSTEMROOT%\System32\WindowsPowerShell\v1.0\.
Powershell version must be 3.0 or higher. This should be the case for Windows 8 and later builds.
- Windows 7 SP1 can install Powershell version 4 [here](https://www.microsoft.com/en-us/download/details.aspx?id=40855).
-##DotNet Core SDK
+## DotNet Core SDK
While not strictly needed to build or tests the .NET Core repository, having the .NET Core SDK installed lets
you use the dotnet.exe command to run .NET Core applications in the 'normal' way. We use this in the
[Using Your Build](Documentation/workflow/UsingYourBuild.md) instructions. Visual Studio 2015 (update 3) should have
installed the .NET Core SDK, but in case it did not you can get it from the [Installing the .Net Core SDK](https://www.microsoft.com/net/core) page.
-##Adding to the default PATH variable
+## Adding to the default PATH variable
The commands above need to be on your command lookup path. Some installers will automatically add them to
the path as part of installation, but if not here is how you can do it.
@@ -79,7 +111,7 @@ and select the 'Path' variable in the 'System variables' (if you want to change
to change it for the currnet user). Simply edit the PATH variable's value and add the directory (with a semicolon separator).
-------------------------------------
-#Building
+# Building
Once all the necessary tools are in place, building is trivial. Simply run build build.cmd script that lives at
the base of the repository.
@@ -117,4 +149,3 @@ Build has a number of options that you can learn about using build -?. Some of
See [Using Your Build](../workflow/UsingYourBuild.md) for instructions on running code with your build.
See [Running Tests](../workflow/RunningTests.md) for instructions on running the tests.
-