glibc 使用自定义 GCC 安装时'make check'错误



我正试图在RHEL-7.9 上编译glibc-2.33

作为其中的一部分,我使用了一个自定义的内置gcc,它部署在/opt/custom/

我能够正确地编译和使用自定义路径下的工具,直到运行make check来检查所有内容。检查报告如下:

Summary of test results:
138 FAIL
4090 PASS
57 UNSUPPORTED
16 XFAIL
2 XPASS

在检查了多个测试后,我不断看到这个错误消息:

libgcc_s.so.1 must be installed for pthread_cancel to work

在查看了测试本身是如何调用的之后,我能够确定到自定义gcc位置的路径没有添加到--library-path调用中。示例:

/disk01/dgardner/rpms/rpms/glibc/SOURCES/build/elf/ld-linux-x86-64.so.2 --library-path /disk01/dgardner/rpms/rpms/glibc/SOURCES/build:/disk01/dgardner/rpms/rpms/glibc/SOURCES/build/math:/disk01/dgardner/rpms/rpms/glibc/SOURCES/build/elf:/disk01/dgardner/rpms/rpms/glibc/SOURCES/build/dlfcn:/disk01/dgardner/rpms/rpms/glibc/SOURCES/build/nss:/disk01/dgardner/rpms/rpms/glibc/SOURCES/build/nis:/disk01/dgardner/rpms/rpms/glibc/SOURCES/build/rt:/disk01/dgardner/rpms/rpms/glibc/SOURCES/build/resolv:/disk01/dgardner/rpms/rpms/glibc/SOURCES/build/mathvec:/disk01/dgardner/rpms/rpms/glibc/SOURCES/build/support:/disk01/dgardner/rpms/rpms/glibc/SOURCES/build/crypt:/disk01/dgardner/rpms/rpms/glibc/SOURCES/build/nptl /disk01/dgardner/rpms/rpms/glibc/SOURCES/build/nptl/tst-robust1

这是错误的。

如果我用自定义的gcc安装位置手动添加到--library-path上,测试就可以工作了——例如

/disk01/dgardner/rpms/rpms/glibc/SOURCES/build/elf/ld-linux-x86-64.so.2 --library-path ${PREVIOUS_FROM_ABOVE}:/opt/custom/lib64 /disk01/dgardner/rpms/rpms/glibc/SOURCES/build/nptl/tst-robust1

到目前为止,我还无法找到在测试期间指定这个额外库路径的方法。

有人知道将这个自定义库路径添加到在"0"期间传入的CCD_ 5的方法吗;进行检查";?

我已经阅读了INSTALL指南&用glibc提供的自述文件,以及在configure中指定的一些环境变量,都是徒劳的。

我还通读了glibc的常见问题解答进行编译,也没什么运气。

在进行了更多的挖掘之后,我能够在glibc发行说明wiki下为2.33 找到合适的答案

具体来说,这个片段:

如果测试系统没有合适的libgcc_s.so和libstdc++。因此安装在系统库目录中,这是必要的要在测试之前将它们复制或符号链接到构建目录中(请参阅https://sourceware.org/ml/libc-alpha/2012-04/msg01014.html关于此处使用系统库目录(。

最新更新