Ошибка Linux From Scratch в Bison-3.0.4 ‘make check’

Так что я следую за Linux с нуля книга и я в главе 5.17 Бизон-3.0.4.

Книга инструктирует нас сделать make check после make проверить результат скомпилированного пакета Bison.

Первоначально я получил следующую ошибку:

make[3]: Entering directory `/sources/bison-3.0'
LEX      examples/calc++/calc++-scanner.cc
CXX
examples/calc++/examples_calc___calc__-calc++-scanner.o
g++: error: ./examples/calc++/calc++-scanner.cc: No such file or directory
g++: fatal error: no input files
compilation terminated.
make[3]: ***
[examples/calc++/examples_calc___calc__-calc++-scanner.o] Error 1
make[3]: Leaving directory `/sources/bison-3.0'
make[2]: *** [check-am] Error 2
make[2]: Leaving directory `/sources/bison-3.0'
make[1]: *** [check-recursive] Error 1
make[1]: Leaving directory `/sources/bison-3.0'
make: *** [check] Error 2

Но получил решение о этот сайт. Который сказал мне сделать следующее перед выдачей make check:

cp Makefile Makefile.bak
sed -i '/calc++/d' Makefile
make check

Это решило проблему, и все проверки получили зеленый ok кроме следующих трех FAILED проверки:

430: Variants lalr1.cc parse.assert api.token.constructor FAILED (c++.at:374)
431: Variants lalr1.cc parse.assert api.token.constructor api.token.prefix={TOK_} FAILED (c++.at:375)
432: Variants lalr1.cc parse.assert api.token.constructor api.token.prefix={TOK_} %locations FAILED (c++.at:376)

Я пытался найти в Google, но ничего не получил.

Есть идеи?

4

Решение

Это распространенная ошибка. Как указано в Глава 4.6. О наборе тестов:

Опыт показывает, что мало что можно получить от бега
наборы тестов в главе 5. Нельзя избежать того факта, что
хост-система всегда оказывает некоторое влияние на тесты в том, что
глава, часто вызывающая необъяснимые сбои. Потому что инструменты построены
в главе 5 являются временными и в конечном итоге отбрасываются, мы не
рекомендую запустить наборы тестов в главе 5 для среднего читателя.
Инструкции по запуску этих наборов тестов предоставляются для
Преимущество тестеров и разработчиков, но они являются строго необязательными.

Решение простое — не запускайте тесты для пакетов, скомпилированных в главе 5. Они потерпят неудачу, и это ничего не значит. Тесты важны в главе 6, когда вы строите свою реальную систему.

7

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]