Manual de Usuario LEX Y YACC

Facultad de Ingeniería Ciencias Físicas y Matemáticas LENGUAJES Y COMPILADORES MANUAL DE USUARIO JOSUÉ LITA 11/08/2016

Views 12 Downloads 0 File size 2MB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

Facultad de Ingeniería Ciencias Físicas y Matemáticas

LENGUAJES Y COMPILADORES

MANUAL DE USUARIO JOSUÉ LITA 11/08/2016

PROCESO PARA GENERAR COMPILADORES CON LEX/YACC 1.- Tener instalado DEV C++ en el sistema tener la versión completa para no tener inconvenientes.

2.- Guardar el compilador yacc, en el Disco Local C.

PROCESO PARA GENERAR VARIABLES DE ENTORNO Generamos una variable de entorno para comunicar la librería gcc (pertenece al DEV C++) con el sistema, para no tener problemas al momento de generar un ejecutable. 1.- Abrir la ubicación donde esté instalado DEV C++. En este caso: C:\Program Files (x86). Buscamos el gcc en la siguiente dirección: C:\Program Files (x86)\DevCpp\MinGW64\bin

2.- Damos clic derecho sobre gcc – Propiedades, para poder obtener la dirección del mismo y copiamos la ruta del archivo.

3.- En las propiedades del sistema, damos click en configuración avanzada del sistema.

4.- Debemos ir a la pestaña de opciones avanzadas y seleccionar Variables de entorno.

5.- Buscamos la variable Path y damos click sobre Editar.

6.- En la última posición de la opción Valor de la variable escribimos; (punto y coma) y pegamos la dirección copiada de gcc.

GENERAR LA APLICACIÓN EJECUTABLE CON SÍMBOLO DE SISTEMA 1.- Copiar los archivos con extensión .y (archivo escrito en yacc) y .l (archivo escrito en lex, si tuviera) en la carpeta bin que está dentro de la carpeta yacc.

2.- Abrimos la ventana de símbolo de sistemas.

3.- Aquí nos dirigimos a la raíz con el comando cd ..

4.- Una vez en la raíz escribimos los comandos para activar yacc. SET PATH=c:\yacc\bin;%PATH% SET BISON_SIMPLE=c:\yacc\bin\bison.simple SET BISON_HAIRY=c:\yacc\bin\bison.hairy SET PATH=%PATH%;C:\MgwCon\Bin;

5.- Nos direccionamos a la carpeta bin con el comando cd yacc\bin

6.- Escribimos el comando lex Infija_Posfija.l para el archivo lex. Infija_Posfija es el nombre del archivo con extensión .l

7.- Al ejecutar el comando anterior se crea el archivo lex.yy automáticamente con extensión .c en la carpeta bin.

8.- Ejecutamos el comando yacc –d Infija_Posfija.y Infija_Posfija es el nombre del archivo con extensión .y (si aparece algún conflicto como este caso, el compilador de Dev C++ se encargara de solucionar dicho problema)

9.-Al presionar ENTER en el comando anterior creará de forma automática los archivos marcados en la imagen, son los archivos de yacc con extensión .c

10.- Para generar la aplicación ejecutable se escribe el comando gcc y.tab.c lex.yy.c –o InfijoPosfijoJosue

y.tab.c es el archivo generado para yacc. lex.yy.c archivo generado para lex y -o nos permite poner nombre a la aplicación. 11.- Al ejecutar este comando se genera automáticamente la aplicación ejecutable de nuestro programa.

Nota: Cabe recalcar que y.tab.c asi como lex.yy.c son nombres por defecto que siempre se crean al ejecutar los comandos anteriores y son necesarios para crear la aplicación ejecutable. Por esta razón es recomendable copiar todos los archivos en otra carpeta si se desea realizar los pasos anteriores para otro archivo con extensión .y asi como .l

12.-Ejecución.