.Net Core 编译的一些陷进以及各种坑集合

CoreCLR 以及CLI编译:

   1.下载CMake(最好最新版) ,添加环境变量(微软利用这个跨平台公共语言运行库生成工具)

   2 Python(最好最新版,且用Install形式安装,如果用Zip安装(有两个版本,一个嵌入式,一个EXE.这两个都不行,里面似乎没有自带的Pip,导致整个脚本引导错误) (用到了 Python脚本引导)添加到变量

   3.PowerShell 安装4.0及其以上的版本(低于4.0 将导致ps文件无法引导)

以上安装成功如下:

.Net Core 编译的一些陷进以及各种坑集合_第1张图片

生成成功如下

   .Net Core 编译的一些陷进以及各种坑集合_第2张图片

 

 

 

WebHost 以及Hosting等类库编译

基本的步骤:

1.到github clone source(这个版本可以因第三步而异,如果编译不过,可以切换2.0.0以上的任何分支再次进行编译)

2.搭建本地nugetserver(在引用了nuget.server之后,在.net 4.6.1版本中,要删除complie target选项,VS会生成两个造成冲突,注意apikey的key值,默认为空,可以给它添加一个,以便以后上传包)

3.编译clone下来的source(编译不通过可以查看powershell版本,以及其script设置情况,根据提示修改,也可以到github下载另外一个版本进行编译,一般的情况下,除了wehost和webhostbuilder所在的metapackages和hosting意外,其它的类库都很容易编译成功)

4.新建一个空.netcoreweb,引用本地nugetserver上面的包,以便进行调试。

 

默认的生成成功之后,会在sln或者csproject下面有artifacts文件夹,里面是当前项目所编译的所有包。由于编译复杂度有点高,请慎入。

 

请求被终止,未能创建SSL/TLS 安全通道

请求被中止: 未能创建 SSL/TLS 安全通道。
所在位置 C:\Users\Administrator\Desktop\Configuration-rel-2.0.0\Configuration-rel-2.0.0\build.ps1:25 字符: 17
+                 throw $exception
+                 ~~~~~~~~~~~~~~~~
    + CategoryInfo          : OperationStopped: (:) [], WebException
    + FullyQualifiedErrorId : 请求被中止: 未能创建 SSL/TLS 安全通道。

解决方法:

在 build.ps1中 添加

[System.Net.ServicePointManager]::SecurityProtocol=[System.Net.SecurityProtocolType]::Tls12
Invoke-WebRequest https://

 

vctargetpath 出错,安装visualcppbuildtools_full.exe

 

Could not find/download: ".NET Core SDK" with version = 3.1.100-preview1-014400
Refer to: https://aka.ms/dotnet-os-lifecycle for information on .NET Core support

安装.net core sdk 3.1.100-preview1-014400版本

以上都需重启 cmd 然后执行脚本

 

powershell最低版本必4.0及其以上,越高越好。

假如说编译某个版本出现了错误,可以到github clone 2.00以上的任何版本下载下来,进行编译。

.\build 自带的有symbol 符号库,可以直接连接到visual studio 进行源码查看

也可以用dotnet pack 或者nuget spec pack 进行编译打包,然后上传到nugetserver,本地引用添加

visual stuido 可以直接识别下载的nuget ,假如说源码与nupkg 不在同一台机器上编译的(在一台机器上编译了Nupkg ,在另一台机器上使用这个包),VS会弹出对话框,然后进行对话框选择。如果是同一台,它会自动识别当前source位置,进行查看。(Java/.NET讨论群:676817308)

你可能感兴趣的:(.Net Core 编译的一些陷进以及各种坑集合)