Статически связать программу Go с /usr/lib/libSystem.B.dylib - PullRequest
0 голосов
/ 28 апреля 2019

Я пытаюсь заставить мою программу 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? Кажется, я следую всем инструкциям, которые я видел в других местах статические ссылки, поэтому я не понимаю, почему все еще есть динамически связанные файлы.

1 Ответ

1 голос
/ 28 апреля 2019

Начиная с Go 1.12, в macOS вы не можете - подробности см. https://github.com/golang/go/issues/17490.

...