Подтвердить что ты не робот

Неисправность gcc 4.6: undefined ссылка на `yylex '

Я пытаюсь построить gcc 4.6, но я получаю некоторые ошибки компоновщика, которые выглядят так, как будто бизон или flex не связаны. Когда makefile выдает эту команду:

gcc   -g -fkeep-inline-functions -DIN_GCC   -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Wold-style-definition -Wc++-compat -fno-common  -DHAVE_CONFIG_H -DGENERATOR_FILE  -o build/gengtype \
        build/gengtype.o build/errors.o build/gengtype-lex.o build/gengtype-parse.o build/version.o ../../build-x86_64-unknown-linux-gnu/libiberty/libiberty.a

Он говорит мне:

/home/chris/code/gcc/trunk/host-x86_64-unknown-linux-gnu/gcc/../.././gcc/gengtype.c:960: undefined reference to `lexer_line'
... undefined reference to `yylex'
... undefined reference to `yybegin'
... undefined reference to `yyend'

Я установил Flex и Bison и даже попробовал несколько вариантов Bison с тем же результатом. Кто-нибудь знает, что еще это может означать?

4b9b3361

Ответ 1

То же самое произошло со мной, это было из-за отсутствия гибких и бизонов. После установки flex и bison я побежал make distclean и ./configure, затем он скомпилировался отлично.

Ответ 2

Он только что попал в какое-то странное состояние, так как я сделал. /configure и попытался его построить, прежде чем правильно настроить бизон и флеш. Вызов очистить было недостаточно. Я уничтожил все это и сделал новый чек, и теперь он отлично работает.

Ответ 3

Ran тоже, но для меня было исправлено установить bisonС++, по какой-то причине у меня только был установлен бизон.