当前位置: 首页 > news >正文

k8s源码编译失败:Makefile:1: *** 缺失分隔符。 停止。

目录

问题解决

更换Arch或系统


问题解决

编译k8s源码的kubelet时执行make失败:Makefile:1: *** 缺失分隔符。 停止。

首先,查看文件内容

# cat Makefile 
build/root/Makefile

修改Makefile,给第一行前增加include,如下:

include build/root/Makefile

重试,会有类似的权限问题:

bash:行1: build/make-clean.sh: 权限不够
make: *** [build/root/Makefile:319:clean] 错误 126bash:行1: hack/make-rules/clean.sh: 权限不够
make: *** [build/root/Makefile:320:clean] 错误 126bash:行1: hack/make-rules/build.sh: 权限不够
make: *** [build/root/Makefile:95:all] 错误 126

给提示的几个文件增加权限:

chmod 755 build/make-clean.sh
chmod 755 hack/make-rules/clean.sh
chmod 755 hack/make-rules/build.sh

接着执行(以kubectl为例)完成编译:

make WHAT=cmd/kubectl

不指定WHAT时编译全部,默认使用linux/amd64平台和架构。

编译会在当前目录下生成一个_output路径,最终结果在当前路径下:

_output/local/bin/linux/amd64/

自动按系统和Arch创建路径名。

更换Arch或系统

例如需要编译arm64架构时:

KUBE_BUILD_PLATFORMS=linux/arm64 make WHAT=cmd/kubectl GOFLAGS=-v

http://www.lryc.cn/news/349602.html

相关文章:

  • 服务器数据恢复—拯救raid5阵列数据行动,raid5数据恢复案例分享
  • 旅游集市数仓建设
  • vue实现点击高亮效果
  • uniapp 配置请求代理+请求封装
  • 代码随想录算法训练营第二十八天|​216.组合总和III​、17.电话号码的字母组合
  • 大模型prompt实例:知识库信息质量校验模块
  • 正则表达式和lambda表达式
  • pyenv 之 python 多版本管理(win11)
  • nodemon运行ts文件
  • 内网渗透瑞士军刀-impacket工具解析(二)
  • huggingface 笔记:pipeline
  • 玩转Matlab-Simscape(初级)-01-从一个简单模型开始学习之旅
  • 电脑录屏软件有哪些?这3款神器必须要知道
  • 如何在华企盾DSC防泄密系统中设置文件自动加密?
  • 【DevOps】Dockerfile详解,做自己的docker镜像
  • CSRF 攻击实验:Token 不存在绕过验证
  • c#教程——索引器
  • 麒麟服务器上执行可执行脚本报错:bash: ./xx: Permission denied(完整版)
  • 触觉美学:移动端UI设计的视觉盛宴
  • 前端起dev从110秒减少到7秒, 开发体验大幅提升
  • Flink CDC 原理
  • Axure网上超市用户端APP原型 (O2O生鲜电商/买菜到家/数字零售/京东到家/抖音超市领域)
  • 外包公司中能学到技术的都是那些人?
  • JavaEE初阶-多线程进阶2
  • B/S和C/S框架
  • 机器学习中常用的几种距离——欧式、余弦等
  • 2024 Google I/O Android 相关内容汇总
  • # 从浅入深 学习 SpringCloud 微服务架构(十八)
  • 在SQL Server中使用临时表与普通表的性能差异分析
  • 数据中台管理系统原型