Я пытаюсь заставить мою программу Go работать как отдельный двоичный файл в chroot
тюрьме. Когда я запускаю программу в chroot
тюрьме, она сразу же умирает с таким сообщением об ошибке: Killed: 9
. Я строю с этим сценарием:
#!/bin/sh -e
export CGO_ENABLED=0
go build -ldflags=-s -o ./dist/contained ./source/main.go
Использование otool -L ./dist/contained
для проверки того, подтверждает ли какая-либо ссылка на нее библиотеку моим подозрением:
./dist/contained:
/usr/lib/libSystem.B.dylib (compatibility version 0.0.0, current version 0.0.0)
Мой вопрос: как мне получить /usr/lib/libSystem.B.dylib и все его зависимости для статической ссылки на программу Go? Кажется, я следую всем инструкциям, которые я видел в других местах статические ссылки, поэтому я не понимаю, почему все еще есть динамически связанные файлы.