我正在尝试通过 SBoTools 在 Slackware 14.2 中安装 Docker,但我收到了 runc 安装的错误消息。
undefined reference to `seccomp_rule_add_exact_array' collect2: error: ld returned 1 exit status
make: *** [all] Error 2
Makefile:30: recipe for target 'all' failed
Failures: runc: runc.SlackBuild return non-zero
我尝试从源代码构建 runc,但遇到了同样的错误。我不是 go-lang 的专家,不知道问题是否出在它身上。
谢谢,
更多详情:
问题发生在安装时,当它给出该命令时:
go build -i -ldflags "-X main.gitCommit=54296cf40ad8143b62dbcaa1d90e520a2136ddfe -X main.version=1.0.0-rc2" -tags "seccomp" -o runc .
编辑 #2 - 问题已解决。
好的,问题出在 slackbuilds 的 runc 包的 Makefile 中。 有两行将使用命令“go build”,并且在这两行中都有一个名为“-ldflags”的标志...要解决该问题,只需将此标志更新为“-gccgoflags”即可。 Obs:如果您尝试安装 Docker,containerd 也会遇到这个问题。
希望这对某人有帮助,我会向 Slackbuilds 中的软件包维护者报告此信息 :)
最佳答案
您在构建时没有正确设置 PATH 变量。 go 可执行文件正在从/usr/bin 中获取;该可执行文件对应于 gccgo,而不是要使用的 google-golang 包中的那个。
关于docker - Slackware 14.2 中的 runc 安装错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45973279/