domingo, 7 de septiembre de 2008

INSTALACION DE FLEX Y BISON EN LINUX

INSTALACIÓN DE FLEX Y BISON EN LINUX

Flex es una herramienta que genera analizadores lexicos a partir de un conjunto de expresiones regulares, bison es una herramienta que genera analizadores sintacticos. Flex e s compatible casi al 100% con Lex, una herramienta clásica de Unix para la generación de analizadores léxicos, pero es un desarrollo diferente realizado por GNU bajo licencia GPL. La instalacion de las herramientas puede ser desde gestor de paquetes, esto dependiendo la distribucion de linux que tengamos, o desde consola por linea de comandos.


INSTALACION MODO GRAFICO:
En mi caso tengo ubuntu entonces para instalar flex y bison solo tenemos que entra al gestor de paquetes synaptic luego buscamos flex y bison y los marcamos para ser instalados, luego solo aplicamos los cambios y se descargaran e instalaran automaticamente los paquetes.


INSTALACION DESDE CONSOLA:
Abrimos una terminal y escribimos:

sudo apt-get install flex
sudo apt-get install bison



COMPILANDO CON FLEX Y BISON

Si queremos que el código generado por las herramientas sea en c, abrimos una terminal y nos ubicamos en donde están los archivos lexico.l y sintactico.y (para flex debe terminar con .l y para bison .y).

Escribimos los siguiente:
flex lexico.l
bison parser.y



flex --header-file=scanner.h -o scanner.cpp lexer.l
bison -o parser.cpp --defines=parser.h parser.y



10 comentarios:

  1. HOLA!!!!!!!!!! :-) ESTA BUENO TU BLOG!!!!!!!!!!!!, TE FELICITO AQUI TE DEJO TU PRIMER COMENTARIO!!!

    YORCH

    ResponderEliminar
  2. Muy interesnate, me fue de mucha ayuda...
    Felicidades¡¡¡¡

    ResponderEliminar
  3. saludos buen blog
    me sirvio para inicar con el flex y el bison
    tienes algun ejemplo de analizador lexico
    programita

    ResponderEliminar
  4. Hola Muy bueno el Post..Me sirvio...
    Oye si todas tus categorias son tus intereses, casi estamos en el mismo canal...Ami me interesa el DW, Ing de software,etc..Soy de mexico tu dime y si kieres nos ponemos en contacto...
    Me gustos mucho tu blog...esta muy padre..Pero bueno me retiro espero que me respondas ...suerte y espero visitar muy pronto tu blog de nuevo

    ResponderEliminar
  5. @ Cuvo: Que bueno que te sirvio el post y gracias.

    ResponderEliminar
  6. Gracias, muy útil!
    Gracias a esto pude empezar mi proyecto!

    ResponderEliminar
  7. Como se pueden crear el archivo .exe o como se ejecuta el programa creado en flex y bison en ubuntu para probarlo. muchas gracias

    ResponderEliminar
  8. @Anónimo: Hola que tal, estoy recordando como lo hacía.... hehe.
    Bueno cuando ejecuta en la consola lo siguiente:

    flex --header-file=scanner.h -o scanner.cpp lexer.l
    bison -o parser.cpp --defines=parser.h parser.y

    Se generan clases y headers en el lenguaje c++ los cuales puede utilizar dentro de su programa. Recuerdo que dentro de estas clases existe una función que recibe el path del archivo que se quiere analizar, por lo tanto no hay un .exe como tal.

    Espero que te haya ayudado. Saludos.

    ResponderEliminar
  9. exelente ejemplo lo que estaba buscando gracias

    ResponderEliminar
  10. MUY bueno :3 funciono en linux mint :3 gracias por el tiempo que dedicaste para hacer el tuto.... ya he visto unos antes, son muy buenos...sigue asi (:

    ResponderEliminar