2.2 .NET Core源代码在Windows操作系统上的编译

.NET Core在Windows平台上的编译,需要安装Visual Studio来主要执行具体的编译动作。所幸的是,Visual Studio Community版本已经可以支持.NET Core的编译全部功能,无须使用付费版本。以下给出.NET Core在Windows 10操作系统上的编译步骤。

2.2.1 下载和安装Visual Studio

.NET Core可以通过Visual Studio 2015和Visual Studio 2017来执行编译。但是鉴于Visual Studio 2015无法像Visual Studio 2017那样可以精细化地定制安装所需组件,安装Visual Studio 2015会占用更多的磁盘空间,因此推荐安装和使用Visual Studio 2017。

在Visual Studio 2017时,需要对Visual Studio 2017进行配置。Visual Studio 2017的组件有两种安装选择方式:面向工作任务的(Workload)和面向独立组件的(Individual Components)。编译.NET Core所需要的组件配置清单如下:

(1)如果以Workloads方式进行安装,需要选择以下内容。

① .NET Desktop Development,再勾选可选项:.NET Framework 4-4.6 Development Tools。

② Desktop Development with C++,再勾选其他可选项:

• VC++2017 v141 Toolset (x86,x64);

• Windows 8.1 SDK and UCRT SDK;

• VC++2015.3 v140 Toolset (x86,x64)。

(2)如果通过Individual Components方式进行安装,需要选择以下组件。

① .NET类别下:

•.NET Framework 4.6 targeting pack;

•.NET Portable Library targeting pack。

② Code tools类别下:Static analysis tools。

③ 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。

④ Development activities类别下:Visual Studio C++core features。

⑤ SDKs,libraries,and frameworks类别下:Windows 10 SDK or Windows 8.1 SDK。

Visual Studio 2017 Community在线安装程序可通过下面链接进行下载:

    https://www.visualstudio.com/zh - hans/thank - you - downloading - visual - studio/?sku =
    Community&rel = 15 #

在Visual Studio 2017 Community安装完成之后,以管理员身份运行Command Prompt for VS2017,注册Microsoft Debug Information Accessor COM组件,如命令2.18所示。

命令2.18 注册msdial20.dll COM控件

2.2.2 安装其他必备软件

在成功地安装和配置Visual Studio 2017 Community之后,请安装最新版本的CMake,下载链接:https://cmake.org/files/v3.8/cmake-3.8.1-win64-x64.msi。如果计算机上安装过CMake 3.4以前的版本,先执行卸载,再安装最新版本的CMake。CMake组件在这里用于为.NET Core源代码项目生成Visual Studio可以打开的项目文件。

在安装CMake时,选择将CMake路径加入到PATH环境变量中,如图2.3所示。

图2.3 设置CMake环境变量

在完成了CMake的安装之后,还需要安装Python。.NET Core对Python的需求最小版本是2.7.9。可访问https://www.python.org/downloads/下载Python 2.7.9或者以上版本进行安装。在安装时同样也需要选择将Python所在路径加入到PATH的环境变量中,如图2.4所示。

在安装过程中应该尽量避免使用带有空格的路径,因为.NET Core编译脚本并没有对带有空格的路径做出处理。在Python安装完成之后,建议选择“Disable max path length”。

图2.4 把Python路径加入到PATH变量中

.NET Core的编译脚本还需要Git客户端的支持。Git for Windows组件可以通过https://git-for-windows.github.io/下载和安装。安装的全过程使用默认设置即可。

2.2.3 在Windows系统上执行.NET Core编译

Windows平台的编译命令很简单。但需要使用“Developer Command Prompt for VS 2017”命令行工具。这是因为在编译过程中,编译脚本需要调用Visual Studio 2017的组件。因此,需要使用带有Visual Studio 2017环境变量设置的命令行窗口,如命令2.19所示。

命令2.19 Windows下构建coreclr和corefx