H3-go库运行失败求助:构建约束排除所有Go文件
问题解决:h3-go库编译约束排除所有文件报错
问题详情
- 操作流程:
- 复制h3-go的示例代码到本地文件
- 执行
go run main.go命令
- 报错内容:
github.com/uber/h3-go/v4: build constraints exclude all Go files in C:\Users\User\go\pkg\mod\github.com\uber\h3-go\v4@v4.1.0
- 运行环境:go version go1.20.3 windows/amd64
解决步骤
- 确认依赖版本兼容性
h3-go v4部分版本对Go版本有隐性要求,可尝试将Go版本升级到1.21及以上,再重新执行编译命令。 - 更新h3-go依赖版本
在项目根目录执行命令,拉取最新兼容的h3-go版本:
或直接编辑项目的go get github.com/uber/h3-go/v4@latestgo.mod文件,将h3-go的依赖行替换为最新版本号后,执行go mod tidy。 - 启用CGO并配置编译环境
h3-go依赖底层C语言实现,Windows平台需确保:- 系统PATH中存在
gcc(可通过安装MinGW获取)或MSVC编译工具链 - 执行
set CGO_ENABLED=1开启CGO功能
- 系统PATH中存在
- 清理缓存并重拉依赖
删除本地依赖缓存后重新同步:go clean -modcache go mod tidy
内容的提问来源于stack exchange,提问作者Advenn
相关产品推荐
相关产品推荐

