.net - 在 Ubuntu 20.04 上的 Wasm 项目上构建失败
问题描述
我是 Uno 的新手,我正在尝试从 Ubuntu20.04 生成一个 Wasm 应用程序。我正在使用“https://platform.uno/docs/articles/getting-started-tutorial-1.html”中描述的第一个教程对其进行测试。
我使用以下命令创建了一个 uno 项目:
$ dotnet new unoapp -o Tutorial1
我使用以下命令转到特定文件夹:
$ cd Tutorial1/Tutorial1.Wasm/
我试过了:
$ donet run
以及:$ donet build /bl
我得到了 1 个错误:
/home/jmarc/.nuget/packages/uno.wasm.bootstrap/1.3.4/build/Uno.Wasm.Bootstrap.targets(126,2): error : System.ComponentModel.Win32Exception (2): No such file or directory [/home/jmarc/GitRepos/dodeka/Tutorial1/Tutorial1.Wasm/Tutorial1.Wasm.csproj]<br>
/home/jmarc/.nuget/packages/uno.wasm.bootstrap/1.3.4/build/Uno.Wasm.Bootstrap.targets(126,2): error : at System.Diagnostics.Process.ForkAndExecProcess(String filename, String[] argv, String[] envp, String cwd, Boolean redirectStdin, Boolean redirectStdout, Boolean redirectStderr, Boolean setCredentials, UInt32 userId, UInt32 groupId, UInt32[] groups, Int32& stdinFd, Int32& stdoutFd, Int32& stderrFd, Boolean usesTerminal, Boolean throwOnNoExec) [/home/jmarc/GitRepos/dodeka/Tutorial1/Tutorial1.Wasm/Tutorial1.Wasm.csproj]<br>
/home/jmarc/.nuget/packages/uno.wasm.bootstrap/1.3.4/build/Uno.Wasm.Bootstrap.targets(126,2): error : at System.Diagnostics.Process.StartCore(ProcessStartInfo startInfo) [/home/jmarc/GitRepos/dodeka/Tutorial1/Tutorial1.Wasm/Tutorial1.Wasm.csproj]<br>
/home/jmarc/.nuget/packages/uno.wasm.bootstrap/1.3.4/build/Uno.Wasm.Bootstrap.targets(126,2): error : at System.Diagnostics.Process.Start() [/home/jmarc/GitRepos/dodeka/Tutorial1/Tutorial1.Wasm/Tutorial1.Wasm.csproj]<br>
/home/jmarc/.nuget/packages/uno.wasm.bootstrap/1.3.4/build/Uno.Wasm.Bootstrap.targets(126,2): error : at Uno.Wasm.Bootstrap.ShellTask_v2ed6794b633a8ebf33d51d6d21f9d6a587ebe09e.RunProcess(String executable, String parameters, String workingDirectory) in D:\a\1\s\src\Uno.Wasm.Bootstrap\ShellTask.cs:line 470 [/home/jmarc/GitRepos/dodeka/Tutorial1/Tutorial1.Wasm/Tutorial1.Wasm.csproj]<br>
/home/jmarc/.nuget/packages/uno.wasm.bootstrap/1.3.4/build/Uno.Wasm.Bootstrap.targets(126,2): error : at Uno.Wasm.Bootstrap.ShellTask_v2ed6794b633a8ebf33d51d6d21f9d6a587ebe09e.RunPackager() in D:\a\1\s\src\Uno.Wasm.Bootstrap\ShellTask.cs:line 579 [/home/jmarc/GitRepos/dodeka/Tutorial1/Tutorial1.Wasm/Tutorial1.Wasm.csproj]<br>
/home/jmarc/.nuget/packages/uno.wasm.bootstrap/1.3.4/build/Uno.Wasm.Bootstrap.targets(126,2): error : at Uno.Wasm.Bootstrap.ShellTask_v2ed6794b633a8ebf33d51d6d21f9d6a587ebe09e.Execute() in D:\a\1\s\src\Uno.Wasm.Bootstrap\ShellTask.cs:line 182 [/home/jmarc/GitRepos/dodeka/Tutorial1/Tutorial1.Wasm/Tutorial1.Wasm.csproj]
我检查了文件/home/jmarc/.nuget/packages/uno.wasm.bootstrap/1.3.4/build/Uno.Wasm.Bootstrap.targets存在并且确实存在。我不明白我做错了什么。
顺便一提。安装的 .Net Sdks 是:
$ dotnet --list-sdks
3.1.405 [/usr/share/dotnet/sdk]
5.0.102 [/usr/share/dotnet/sdk]
解决方案
也许你需要安装单声道,对吧? https://github.com/unoplatform/uno/issues/1947#issuecomment-625468775
我试过了:
- 将 Mono 存储库添加到您的系统
- 安装单声道
然后运行以下命令:
dotnet new -i Uno.ProjectTemplates.Dotnet
dotnet new unoapp -o MyApp -ios=false -android=false -macos=false
cd MyApp/MyApp.Wasm
dotnet build
推荐阅读
- python - Python 类字符串类型参数显示为浮点类型
- spring-boot - 如何在 Spring Boot 中运行应用程序期间切换数据库源存储库
- javascript - react app如何实时更新数据
- c++ - 没有参数列表的模板名称“事件”的无效使用,模板问题
- azure - 来自 lex 中单个 lamda 函数的多个返回语句
- python - 如何在“为什么”循环中添加“如果”命令
- django - 覆盖 Django 序列化程序中的“创建”函数
- apache - 不存在的子域被 Google 索引 - 通过 .htaccess 删除僵尸子域
- c - 如何将文本逐行存储到C中的二维数组中?
- c - 在夹板的帮助下删除我的代码中的安全漏洞