how example compiler compile gcc makefile bison

example - Problemas al construir gcc 4.6: referencia no definida a `yylex ''



how do a makefile (3)

Lo mismo me pasó a mí, fue por falta de flexión y bisonte. Después de instalar flex y bison, ejecuté make distclean y ./configure , luego compilé bien.

Estoy tratando de compilar gcc 4.6, pero estoy obteniendo algunos errores de enlazador que parecen indicar que bison o flex no están siendo enlazados. Cuando el makefile emite este comando:

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

Me dice:

/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''

Instalé Flex y Bison, e incluso probé varias variantes de Bison con el mismo resultado. ¿Alguien sabe qué más podría significar esto?


Me topé con esto también, pero la solución para mí fue instalar bisonc ++, por alguna razón, solo tenía bison instalado.


Simplemente entró en un estado extraño desde que configuré ./configure y traté de construirlo antes de configurar correctamente el bisonte y el flex. Llamar a limpiar no era suficiente. Limpié todo el asunto e hice una nueva comprobación y ahora funciona bien.