o语言默认为静态链接:

但是,存在可能导致动态链接的库。

此时,如果需要静态链接,可以添加-ldflags=’-extldflags –static ‘参数进行静态链接。 也就是说,该命令:

go build-ldflags=’-ext ldflags– static ‘

当然,有些第三方库无法进行静态链接,因为在某些glibc中调用了不支持静态链接的函数。

在这种情况下,如果您坚持需要静态链接,则可以放弃glibc库并切换到musl libc库。

如果您的操作系统是Debian/Ubuntu,则可以运行以下命令安装musl libc库:

sudo apt-getinstallmusl-devmusl-tools

然后使用musl libc库静态链接。 命令如下所示。

cc=musl-gccgobuild-tagsmusl-ldflags=’-ext ldflags– static ‘

然后,静态链接成功。