github 项目地址 https://github.com/fyne-io/fyne
一、导入失败重现
在导入fyne包的时候会出现各种问题,今天我来教大家怎么解决
我随便创建一个fyne文件演示,你们随意
初始化
老样子先初始化包
C:\Users\xshao\Desktop\golang\fync>go mod init mtail
(桌面别吐槽,我c盘1T,无所谓)
导入fyne包
go get fyne.io/fyne/v2
出现:go: added fyne.io/fyne/v2 v2.3.1 说明导入成功
创建main.go文件
在main.go中写入
package main
import (
"fyne.io/fyne/v2/app"
"fyne.io/fyne/v2/container"
"fyne.io/fyne/v2/widget"
)
func main() {
a := app.New()
w := a.NewWindow("Hello")
hello := widget.NewLabel("Hello Fyne!")
w.SetContent(container.NewVBox(
hello,
widget.NewButton("Hi!", func() {
hello.SetText("Welcome :)")
}),
))
w.ShowAndRun()
}
发现疯狂报错
二、 解决问题
安装运行库
因为fyne 这个东西需要c语言的编译器
因为我用的是windows,所以只介绍windows的编译器安装,linux编译器安装网上大把大把的
MSYS2 是官方推荐的windows下面的c编译器 :msys2 官网
打开网页,点击如图所示的位置下载
无脑下一步
当然如果你要改安装位置,一定要记得位置在哪
安装后 取消勾选打开msys2 然后 点击完成
如果忘记手快点了开启,关掉它
安装c编译器
安装完毕以后打开你的安装路径,我没有改安装位置,所以在 C:\msys64
打开这个文件,找到一个mingw64.exe
注意有个.ico别点错了
在弹出了命令行内输入
pacman -Syu
然后回车就会开始安装
然后再输入
pacman -S git mingw-w64-x86_64-toolchain
这个安装gcc g++ 等其他的编译器
这里直接回车,默认安装所有支持的编译器
这里按y 然后 回车 表示同意
这里安装时间会很长很长
耐心等待安装完毕
这样就是安装成功了
然后关闭窗口
给编译器配置系统环境
找到msys2的安装目录
我的安装位置是: C:\msys64\
所以打开C:\msys64\mingw64\bin位置
可以看见文件夹下面有个gcc.exe
复制bin的文件夹路径:
我是win11,所以是使用win11的配置方法,win10或其他版本的windows用户请上网百度“怎么配置系统环境”
右键桌面的“此电脑”选择属性,高级系统设置
点击环境变量
path->编辑
点击新建,然后把路径粘贴进去
4. 检测环境是否配置成功
随便打开cmd,输入gcc然后回车
如果提示没有文件输入则表示安装成功,如果是找不到命令“Command not found”
则安装失败,按照上面的方法再做一遍
三、 导入fyne包成功案例
初始化包
在项目文件夹目录下启用cmd
go mod init your_package_name
2. 导入fyne包
go get fyne.io/fyne/v2
创建main.go然后导入示例代码
package main
import (
"fyne.io/fyne/v2/app"
"fyne.io/fyne/v2/container"
"fyne.io/fyne/v2/widget"
)
func main() {
a := app.New()
w := a.NewWindow("Hello")
hello := widget.NewLabel("Hello Fyne!")
w.SetContent(container.NewVBox(
hello,
widget.NewButton("Hi!", func() {
hello.SetText("Welcome :)")
}),
))
w.ShowAndRun()
}
会发现现在还有问题,问题不大
在命令行执行
go mod tidy
哒哒,没有报错
现在可以编译运行了,不过可能编译时间会有点长
可以使用
go build -x main.go
查看编译过程
然后执行main.exe
可以看到已经可以运行了