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 ‘
然后,静态链接成功。