由于 GLIBCXX_3.4.26,Apache 无法加载模块

Apache can't load module because of GLIBCXX_3.4.26

我正在使用 httpd:2.4.46 docker 图像,其中放置了我自己的 httpd.conf 和一些个人 mod 规则。

问题是当我启动容器时,它可以工作,但是 error_log 显示他没有加载我的 module。

[5 月 17 日星期一 10:00:25.279259 2021] [通知] [pid 12:tid 139994847216768] [mod-1.0.016] 加载失败 /usr/local/apache2/modules/ ../../../../home/latest/module_gcc10.so.2021.2.1.003 : /usr/lib/x86_64-linux-gnu/libstdc++.so.6: 未找到版本“GLIBCXX_3.4.26”(要求/usr/local/apache2/modules/../../../../home/latest/module_gcc10.so.2021.2.1.003).

我暂时试过了:GLIBCXX_3.4.20 not found, how to fix this error?,但没有成功。 我很确定这与缺少有关 gcc 或 g++ 的东西有关,但我真的不知道该怎么做。

感谢您的帮助。

您的模块链接到 libstdc++.so.6 版本 3.4.26(或更高版本)。

必须在运行时提供libstdc++.so.6的该版本(或更新版本),否则您的程序将不会运行。

  • 注意:libstdc++.so.6 是 GCC 的一部分,它与 GLIBC 没有任何关系
  • 注意:您不需要将完整的 GCC 安装到 运行time 映像中,您只需要 libstdc++.so.6(可能还 libgcc_s.so.1.