M1 Mac安装shyiko/kubesec失败,请求技术协助
解决M1 Mac通过Homebrew安装kubesec失败的问题
问题现象
执行brew install shyiko/kubesec/kubesec时安装失败,核心报错:
fatal: not a git repository (or any of the parent directories): .git go: go.mod file not found in current directory or any parent directory. 'go get' is no longer supported outside a module. To build and install a command, use 'go install' with a version, like 'go install example.com/cmd@latest' make: *** [fetch] Error 1
问题原因
- 官方Homebrew Formula的构建脚本依赖旧版Go包管理流程(
go get+glide),但Go 1.16+已弃用无模块环境下的go get命令; - 构建脚本要求运行在Git仓库目录中,而Homebrew的默认构建环境不满足该条件。
解决方案
方案1:直接下载预编译二进制(最简便)
- 获取M1 Mac适配的
kubesec-darwin-arm64二进制文件; - 赋予执行权限并移动到系统可执行路径:
chmod +x kubesec-darwin-arm64 sudo mv kubesec-darwin-arm64 /usr/local/bin/kubesec - 验证安装:
kubesec version
方案2:手动编译安装
- 创建临时工作目录并初始化Go模块:
mkdir -p ~/tmp/kubesec && cd ~/tmp/kubesec go mod init kubesec-build - 安装构建工具并克隆源码:
go install github.com/mitchellh/gox@latest go install github.com/Masterminds/glide@latest git clone https://github.com/shyiko/kubesec.git . - 拉取依赖并编译:
glide install make build - 将编译产物移到系统路径:
sudo mv kubesec /usr/local/bin/ - 验证安装是否成功:
kubesec version
方案3:使用Homebrew Core仓库的kubesec
Homebrew Core中已收录kubesec,该版本的构建脚本已适配新版Go环境,直接执行:
brew install kubesec
验证命令同上。
内容的提问来源于stack exchange,提问作者Smbugua
相关产品推荐
相关产品推荐

