我需要从可以在RedHat和SuSE分发上运行的C ++代码构建单个二进制文件。我需要分发二进制文件,因为我无法共享源代码。在这些约束条件下操作,我认为一种方法是将libstdc ++的兼容版本与我的二进制文件一起发送,并使用rpath或ldconfig将其链接到它。
由于多种原因,我无法静态链接,包括LGPL中的衍生作品条款等。
答案 0 :(得分:0)
当您为不同的Linux发行版分发二进制文件时,您可以将所有依赖的库(包括libstdc ++)放入包含二进制文件的包中 - 您还可以在二进制文件中将RPATH设置为$ ORIGIN,这样它将在二进制文件的目录中查找库。这样它就可以与大多数Linux发行版一起使用。