03. 故障排查

故障排查 #

在设置过程中或编译第一个应用程序时,可能会遇到一些意外情况。我们在这里尝试解决这些问题。记住,你也可以使用 Fyne Setup 工具检查你的配置。

编译器问题 #

问:命令未找到:fyne

答: 如果你已经使用 go install fyne.io/fyne/v2/cmd/fyne@latest 安装了 Fyne 命令,但尝试运行时看到错误,则最可能的问题是你的 Go 安装没有正确设置你的 PATH 环境变量。

Go 会将工具安装到用户的 GOPATH 位置的 bin 目录中(通常是 ~/go)- 你可以通过检查你的 PATH 变量是否包含此位置来验证这一点。如果似乎缺少这个位置,那么你应该更新你的 PATH 环境变量以包含 ~/go/bin,或者如果你更改了安装位置,则可以使用 $(go env GOPATH)/bin 代替。

问:构建约束排除了…中的所有 Go 文件

答: 如果你正在交叉编译,你可能会看到关于 go 文件被排除的错误,随后是构建失败。当进行标准的 Go 交叉编译时,它会自动关闭 CGo。为了解决这个问题,请确保在你的编译命令中设置 CGO_ENABLED=1

问:cc1.exe: 抱歉,未实现:未在 64 位模式中编译

答: Windows 编译有时会抱怨没有可用的 64 位模式。这通常是因为安装了错误的编译器,或者配置不正确。如果你已经按照我们的 MSYS2 和 MingW64 的 安装说明,那么请确保你使用的是开始菜单中标题为“MSYS2 MinGW 64-bit”的启动器。

分发 #

问:Apple macOS 说我的应用在下载时已损坏

答: 当文件在 macOS 计算机上下载时,它们会被标记有“隔离”标志,以便由操作系统检查是否有问题。如果你的应用程序使用从 Apple 购买的证书签名,这不是问题。然而,如果你想在没有那个成本的情况下分享你的软件,这个错误可能会出现 - 并且在 M1/2 计算机上,不可能使用系统设置来允许应用运行。

修复的方法是删除隔离标志,你可以通过打开终端并执行以下命令来做到这一点:

sudo xattr -r -d com.apple.quarantine MyApp.app