如何 link 到旧版本的数学库?

How to link to an older version math library?

我即将向我的客户发布一个库 (.so)。 但是,我客户的平台是一个非常老的 debian(2017 年发布的 9.1)。 我的库只适用于 >= glibc-2.27.
我设法 运行 通过以下技巧

编程
// copy libm-2.27.so from my computer to the old debian
ln -sf ./libm-2.27.so libm.so.6
gcc ./test.c -o ./test -lmylib -L ./ -lm
LD_LIBRARY_PATH=`pwd` ./test

但是我的客户不接受这个解决方案。
是否可以 link 到旧版本的数学库?
例如,客户给了我数学库,我 link 我的库在我的电脑上对着它。

谢谢!

My libray only works with >= glibc-2.27.

是因为您实际上需要添加到 GLIBC-2.27 的功能,还是因为您的系统恰好安装了该版本而您不知道如何为旧系统构建?

从评论来看,您似乎实际上不需要 GLIBC-2.27。

在这种情况下,最简单的解决方案是安装带有 Debian 9.1 的 VM,并在该 VM 中构建库。

这还有一个额外的好处,即您可以在将库发送给客户之前,在与客户匹配的环境中测试

如果您不需要 VM,列出了其他解决方案 here

I managed to run program by the following tricks ... But my client don't accept this solution.

您的客户 聪明 拒绝该解决方案:它通常无法工作,并且 运行 在这样的环境中会使您的客户暴露于大量潜在的未定义行为和崩溃。要了解为什么会这样,请阅读 this answer.