Ошибка: отсутствует ожидаемое перемещение TLS в binutils-2.27/gold/testsuite
Я собираю binutils-2.27
с gcc 5.3.0
, Вот параметры настройки:
../binutils-2.27/configure --prefix=$FOO --build=x86_64-redhat-linux --disable-multilib --with-gmp=$FOO --with-mpfr=$FOO --with-mpc=$FOO --with-isl=$FOO --with-system-zlib --enable-lto --enable-ld --enable-gold --enable-plugins
Когда я бегу make check
, Я получил
gcc -Bgcctestdir/ -fPIE -g -O2 -Bgcctestdir/ -Wl,-R,. -o pr20216a_test pr20216a_test-pr20216_main.o pr20216a_test-pr20216_def.o pr20216_gd.o pr20216_ld.o -ldl
../../../binutils-2.27/gold/testsuite/pr20216_gd.S:13: error: missing expected TLS relocation
../../../binutils-2.27/gold/testsuite/pr20216_gd.S:27: error: missing expected TLS relocation
../../../binutils-2.27/gold/testsuite/pr20216_gd.S:48: error: missing expected TLS relocation
gcctestdir/ld: error: missing expected TLS relocation
../../../binutils-2.27/gold/testsuite/pr20216_ld.S:21: error: missing expected TLS relocation
../../../binutils-2.27/gold/testsuite/pr20216_ld.S:22: error: missing expected TLS relocation
../../../binutils-2.27/gold/testsuite/pr20216_ld.S:33: error: missing expected TLS relocation
../../../binutils-2.27/gold/testsuite/pr20216_ld.S:34: error: missing expected TLS relocation
../../../binutils-2.27/gold/testsuite/pr20216_ld.S:35: error: missing expected TLS relocation
gcctestdir/ld: error: missing expected TLS relocation
collect2: error: ld returned 1 exit status
1 ответ
Решение
Это было вызвано ошибкой в наборе тестов, когда он случайно использовал системный ассемблер вместо последнего ассемблера в дереве сборки. Тест был написан так, чтобы ожидать перемещения, которое производится только более поздней версией газа. Это было исправлено 10 августа и перенесено в ветку 2.27. Смотрите обсуждение для PR 20216 для получения дополнительной информации.