Go:如何在构建时显式链接到OS X框架?

时间:2015-07-29 16:39:40

标签: macos go

尝试使用go get bitbucket.org/liamstask/goose/cmd/goose在OS X 10.10.3上获取和构建鹅时出现此错误:

Undefined symbols for architecture x86_64:
"_SecKeychainItemExport", referenced from:
  _FetchPEMRoots in 000001.o
"_SecTrustCopyAnchorCertificates", referenced from:
  _FetchPEMRoots in 000001.o
ld: symbol(s) not found for architecture x86_64

我认为这个错误是由于OS X中的安全框架未被链接造成的。这里有一些可能相关的信息:https://github.com/golang/go/issues/11258

那么,我该如何显式链接到这个库?或者还有其他我想念的东西?

感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

您可以将go build标记传递给go get。所以:

go get -f -u -ldflags "-framework Security" bitbucket.org/liamstask/goose/cmd/goose

将强制下载并链接到安全框架。