静态库的可移植性

时间:2018-09-08 19:43:56

标签: c++ linux linker static-libraries

简短的问题。如果我已经编写了C ++静态库并在Ubuntu上使用G ++对其进行了编译,我可以安全地假设可以在其他Linux发行版上使用G ++进行链接吗?

1 个答案:

答案 0 :(得分:3)

在可执行文件,静态库或共享库之间,二进制文件在linux系统之间是不可任意互换的。

这就是为什么几乎所有软件包都作为源分发的原因,而您的软件包管理器系统负责如何配置和编译这些软件包。

也就是说,通常在不公开实际源代码的情况下进行分发的商业软件通常由供应商针对各种Linux发行版进行(交叉)编译。