Ошибка установки runc в Slackware 14.2
Я пытаюсь установить Docker в Slackware 14.2 через SBoTools, но я получил сообщение об ошибке установки runc.
неопределенная ссылка на `seccomp_rule_add_exact_array' collect2: error: ld вернул 1 состояние выхода
make: *** [все] Ошибка 2
Makefile: 30: рецепт для цели 'all' не удался
Сбои: runc: runc.SlackBuild возвращает ненулевое значение
Я пытался собрать runc из исходного кода, но получил ту же ошибку. Я не специалист по go-lang и не знаю, в чем проблема.
Спасибо,
Больше деталей:
Проблема возникает, когда в установке, когда он дает эту команду:
go build -i -ldflags "-X main.gitCommit=54296cf40ad8143b62dbcaa1d90e520a2136ddfe -X main.version=1.0.0-rc2" -tags "seccomp" -o runc .
Правка № 2 - Проблема решена.
Хорошо, проблема была в Makefile пакета runc из slackbuilds. Есть две строки, где будет использоваться команда "go build", и в обеих есть флаг "-ldflags"... Чтобы решить проблему, просто обновите этот флаг с помощью "-gccgoflags", и это сработает. Obs: Если вы пытаетесь установить Docker, у вас тоже будет эта проблема с containerd.
Надеюсь, это кому-нибудь поможет, и я сообщу об этом для основного пакета в Slackbuilds:)
3 ответа
Вы не правильно указали переменную PATH при сборке. Исполняемый файл go извлекается из /usr/bin; этот исполняемый файл соответствует gccgo, а не тому, который используется в пакете google-golang.
Проблема не в -ldflags
, Проблема в том, что вы не установили свой PATH после установки google-go-lang
, Для этого вы можете выйти из установленного вами приглашения root go
и войдите в систему, или просто просто источник /etc/profile.d/go.sh
:
source /etc/profile.d/go.sh
а затем продолжить установку runc
и другие пакеты из приглашения, которое вы только что получили go.sh
, смотри: https://docs.
slackware.com/howtos:cloud:docker
Нет, это вообще не связано с Go. Эта ошибка возникает при компиляции (или, скорее, компоновке) C-кода. На первый взгляд, похоже, проблема в том, что ваш libseccomp
устарел Отсутствующий символ был добавлен между версией 2.0 и 2.1 этой библиотеки.