golang动态链接库,go动态编译

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 ‘

然后,静态链接成功。

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注