您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Go编译的二进制文件不会在Ubuntu主机上的高山Docker容器中运行

Go编译的二进制文件不会在Ubuntu主机上的高山Docker容器中运行

认情况下,如果使用该net软件包,则内部版本可能会生成带有某些动态链接(例如到libc)的二进制文件。您可以通过查看以下结果来动态检查静态链接ldd output.bin

我遇到了两种解决方案:

https://golang.org/doc/go1.2

认情况下,net软件包需要cgo,因为主机操作系统通常必须进行中介网络调用设置。但是,在某些系统上,可以使用不带cgo的网络,这样做很有用,例如,避免动态链接。新的构建标签netgo(认情况下为off)允许在可能的系统上以纯Go格式构建net软件包。

上面假设唯一的CGO依赖项是标准库的net程序包。

Go 2022/1/1 18:15:06 有525人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶