Среда компиляции состоит из следующих, которые были загружены через Spack:
binutils-2.33.1%GCC@9.2
binutils-2.33.1@9.2. +piclibs binutils = binutils-2.33
gmake@4.2.1
libcap-2.25
-linux-headers-4.9.10 (указано ниже как $ kerneers)
-libgd-2.2.4
$ kerse). Установлен с помощью Spack. < /p>
Я имел клонированный Glibc to $ home /lib /glibc и проверил Glibc-2.30 Repo.
из $ home /lib /glibc_build, я запускаю следующую конфигурацию, чтобы обеспечить правильное использование вышеуказанных пакетов: < /p>
Код: Выделить всё
../glibc/configure --prefix=$HOME/lib/gnu/glibc_v2 CC="$gcc_bin/gcc -m64" --with-headers=$kern_headers CFLAGS=" -O3" CXXFLAGS=" -O3 -std=c++17" --with-binutils=$binutils_base/bin
< /code>
с последующим: < /p>
make -j40
< /code>
, который компилизируется без проблем. Однако, когда я запускаю < /p>
make check
< /code>
Я в конечном итоге получаю несколько экземпляров следующей ошибки: < /p>
Несоответствие, обнаруженное Ld.so: get-dynamic-info.h: 147:
eff_get_lynamic_info: assertion `dt_gul_l Неудача! /lib64/libc.so.6 (0x00002b9080d40000)
$ home $/lib/gnu/glibc_v2/lib/ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2 (0x00002b9080/ldux-x86-64.so.2 (0x00002b9080. /> < /blockquote>
, что не имеет для меня смысла для меня, поскольку он все еще использует старый линкер против линкера из Binutils. Кроме того, он указывает на пустой каталог, так как я не сделал установку Я попытался запустить, чтобы сделать установку < /code> независимо, но если я попытаюсь скомпилировать программу тестирования, используя Libc.so в дереве каталогов--prefix, используя настройки компиляции RPATH и динамического линкера, я получаю то же самое сообщение об ошибке утверждения. < /p>
Пример сбоя команды сбои компиляции: < /p>
env gconv_path = $ home /lib /glibc_build /iconvdata \
locpath = $ home /lib /glibc_build /iconvdata \
locpath = $ home /lib /glibc_build /localedata \
c \
$ home/lib/glibc_build: $ home/lib/glibc_build/math: \
$ Home/lib/glibc_build/elf: $ home/lib/glibc_build/dlfcn: \
$ home/lib/glibc_build/nss: $ home/lib/glibc_build/nis: \
$ Home/lib/glibc_build/rt: $ home/lib/glibc_build/resolv: \
$ home/lib/glibc_build/mathvec: $ home/lib/glibc_build/$ home/ribc_build/lib/libc_build/lib/libc_build/lib/libc_build/lib/libc_build: $ hous />
$ home/lib/glibc_build/csu/test-as-const-ucontext_i \
$ home/lib/glibc_build/csu/test-as-const-ucontext_i.out; \ ../scripts/evaluate-test.sh csu/test-s-const-context_i $? false
false \
$ home/lib/glibc_build/csu/test-as-const-ucontext_i.test-result Innossistence, обнаруженная Ld.SO: Get-Dynamic-Info.h: 147:
elf_get_dynamic_info: assertion `info [dt_rpath] = null '/null'/null '/null'/null '/null'/null '/null'/null '/null'/null '/null'/null '/null'/nulnamic_inmic
Подробнее здесь: https://stackoverflow.com/questions/599 ... heck-glibc
Мобильная версия