[英]Stopping linkage against GLIBC turning strftime into __strftime_l
我有一个通常使用 GLIBC 构建和执行的应用程序。 我的一个用户试图在使用 MUSL C 库(声称与 GLIBC 兼容)构建的平台上使用它。
这样做时,他们会遇到__strftime_l
的ldd
符号解析失败,MUSL 实现了该符号,但实际上并未将其导出为外部可见符号。
有什么方法可以阻止针对 GLIBC 的应用程序构建,将strftime_l()
等函数转换为运行时解析符号表中的__
前缀版本,例如__strftime_l()
?
MUSL C 库(声称与 GLIBC 兼容)。
来自musl 常见问题解答:
musl 与 glibc 兼容吗?
... 目前,一些 glibc 链接的共享库可以用 musl 加载 ...
如果使用 musl 代替 /lib/ld-linux.so.2,那么除了最简单的 glibc 链接的应用程序之外的所有应用程序都将失败
如果您想支持 musl,请针对它构建(并测试)一个单独的应用程序版本。 您和您的用户都会对最终结果更加满意。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.