之前编译的时候,最终还是有报错,但是也能生成一些文件,但是肯定这关,没彻底通过。于是又重新来过一次,希望能够详细记录下来

一、搭建环境  WIN10+VS2017+MissionPlanner 1.3.70......

下载VS2017并安装。社区版是免费的

下载地址:https://visualstudio.microsoft.com/zh-hans/downloads/  此地址一般是最新版本的

2017版地址:https://docs.microsoft.com/zh-cn/visualstudio/releasenotes/vs2017-relnotes

安装VS时,全面一些。之前有介绍过,不详细说了。

二、下载missionplanner 代码  网址:https://github.com/ArduPilot/MissionPlanner

三、运行VS2017,并打开项目,MissionPlanner.sln

Mission planner1.3.70环境搭建及编译

Mission planner1.3.70环境搭建及编译

打开后,页面显示

Mission planner1.3.70环境搭建及编译

四、问题开始出现,开始解决疑难杂症

1、打开项目的过程中,出现下面提示,我点击了确定后,项目会继续进行。

Mission planner1.3.70环境搭建及编译

Mission planner1.3.70环境搭建及编译

文件导入最后的效果,错误+警告 

Mission planner1.3.70环境搭建及编译

1、问题:NETSDK1045

代码

说明

项目

NETSDK1045

当前 .NET SDK 不支持将 .NET Core 2.2 设置为目标。请将 .NET Core 2.1 或更低版本设置为目标,或使用支持 .NET Core 2.2 的 .NET SDK 版本。

Mock

解决方法:安装SDK2.2.101版本

地址:https://dotnet.microsoft.com/download/dotnet-core/2.2

Mission planner1.3.70环境搭建及编译

Mission planner1.3.70环境搭建及编译

Mission planner1.3.70环境搭建及编译

(不需要自己选路径,直接安装)

再次启动后,错误没有了,警告也少了一些

Mission planner1.3.70环境搭建及编译

补充:后来又下了另一个.依然可用

Mission planner1.3.70环境搭建及编译

 

2、问题IDE1003

代码

说明

项目

IDE1003

分析器程序集“C:\Users\XXX\.nuget\packages\microsoft.aspnetcore.components.analyzers\3.0.0-rc1.19457.4\analyzers\dotnet\cs\Microsoft.AspNetCore.Components.Analyzers.dll”依赖于“netstandard, Version=2.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51”,但是却找不到它。除非将缺少的程序集也添加为分析器引用,否则分析器可能不会正确运行。

wasm

 

解决方法:添加引用路径试试,能添加引用的就都添加,通常前面符号 C#的都可以添加。引用路径,就是你本地安装的Missionplanner的路径,不是源码,而是运行文件。

Mission planner1.3.70环境搭建及编译

生成解决方案后,依然各种问题。有的人建议,关闭所有,然后重新打开后再次编译,就可以通过。但是这次对我,没奏效。想偷懒,是不可能了,老老实实一个一个问题解决吧。

Mission planner1.3.70环境搭建及编译

3、错误提示,CS2046

Mission planner1.3.70环境搭建及编译

双击错误提示,进入代码里,有修改的提示, 按照提示顺序修改(Graphi...和IWindowinfo),我选择的是 添加到引用程序(记得是最后一个选项)。之后,OpenTK的错误也不提示了。

Mission planner1.3.70环境搭建及编译

Mission planner1.3.70环境搭建及编译

结果:

Mission planner1.3.70环境搭建及编译

 

4、问题

代码

说明

项目

CS0006

未能找到元数据文件“E:\………………\MissionPlanner-master\ExtLibs\Xamarin\Xamarin\bin\Debug\netstandard2.0\Xamarin.dll”

Xamarin.UWP

 

解决方法:添加引用路径

 

5、问题

代码

说明

项目

NETSDK1045

当前 .NET SDK 不支持将 .NET Core 3.1 设置为目标。请将 .NET Core 2.2 或更低版本设置为目标,或使用支持 .NET Core 3.1 的 .NET SDK 版本。

Ntrip

 

解决方法,找到相应的文件,右键,属性,修改目标框架

Mission planner1.3.70环境搭建及编译

 

6、问题:

代码

说明

项目

NETSDK1045

当前 .NET SDK 不支持将 .NET Standard 2.1 设置为目标。请将 .NET Standard 2.0 或更低版本设置为目标,或使用支持 .NET Standard 2.1 的 .NET SDK 版本。

wasm

 

解决方法:同上

Mission planner1.3.70环境搭建及编译

7、问题:

代码

说明

项目

NETSDK1045

当前 .NET SDK 不支持将 .NET Core 3.1 设置为目标。请将 .NET Core 2.2 或更低版本设置为目标,或使用支持 .NET Core 3.1 的 .NET SDK 版本。

px4uploader

Mission planner1.3.70环境搭建及编译

修改框架的方式,不管用,灰色,不能点,没选项!!

Mission planner1.3.70环境搭建及编译

最后找到相应文件,进入代码,删除3.1那个框架,解决了

Mission planner1.3.70环境搭建及编译

 

8、问题: 指定的路径或文件名太长,或者两者都太长

严重性

代码

说明

错误

 

“Javac”任务意外失败。System.IO.PathTooLongException: 指定的路径或文件名太长,或者两者都太长。完全限定文件名必须少于 260 个字符,并且目录名必须少于 248 个字符。   在 System.IO.LongPathHelper.Normalize(String path, UInt32 maxPathLength, Boolean checkInvalidCharacters, Boolean expandShortPaths)   在 System.IO.Path.NewNormalizePath(String path, Int32 maxPathLength, Boolean expandShortPaths)   在 System.IO.Path.NormalizePath(String path, Boolean fullCheck, Int32 maxPathLength, Boolean expandShortPaths)   在 System.IO.Path.GetFullPathInternal(String path)   在 System.IO.FileInfo.Init(String fileName, Boolean checkHost)   在 System.IO.FileInfo..ctor(String fileName)   在 Xamarin.Android.Tasks.ZipArchiveEx.AddFiles(String folder, String folderInArchive, CompressionMethod method)   在 Xamarin.Android.Tasks.ZipArchiveEx.AddDirectory(String folder, String folderInArchive, CompressionMethod method)   在 Xamarin.Android.Tasks.Javac.Execute()   在 Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()   在 Microsoft.Build.BackEnd.TaskBuilder.<ExecuteInstantiatedTask>d__26.MoveNext()

 

解决方案:文件名缩短,不出现中文。最后解决

 

9、问题

Mission planner1.3.70环境搭建及编译

方法1   升级,没管用

Mission planner1.3.70环境搭建及编译

2.降级到4.2,成功了

Mission planner1.3.70环境搭建及编译

生成后错误没有了,尽管还有好多警告

Mission planner1.3.70环境搭建及编译

由于不敢相信没有错误了,于是又尝试了好几次生成生成。都不提示错误了,警告倒是每次都不同

Mission planner1.3.70环境搭建及编译

 

2020年4月

相关文章: