An open API service indexing awesome lists of open source software.

https://github.com/liby99/quex


https://github.com/liby99/quex

Last synced: 3 months ago
JSON representation

Awesome Lists containing this project

README

        

Quex - A Mode Oriented Lexical Analyser Generator
(C) Frank-Rene Schaefer
--------------------------------------------------------------------------------

Quex is free software distributed under MIT License.

This software is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE.

While not linked to license requirements, the author whishes this software NOT
to be used for military purposes or other kinds of purposes that might
potentially harm mankind.

--------------------------------------------------------------------------------

BRIEF:

Quex is a generator for lexical analysers with extended features, such as
event handling for mode transitions, mode inheritance and the indentation
event. Quex comes with an extensive documentation in pdf format located in
the ./DOC subdirectory. Note, that not all distributions of quex contain
the documentation. It is always available on the web under quex.sf.net. The
./demo subdirectory contains examples that should get you quickly up and
running.

NOTE: Quex requires python to be installed.

INSTALLATION:

The installation process is simple:

-- Extract the file 'quex-x.x.x.tar.gz' into a directory that fits your
little heart's desires.

-- Set the environment variable 'QUEX_PATH' in your system environment to
the place where you installed quex. If you are using a Unix system and
the bash-shell, and your are user 'elvis' then add something like the
following line to your .bashrc-file:

export QUEX_PATH=/home/elvis/downloads/quex-0.11.2/

provided that you extracted the files into the directory /downloads/quex-0.11.2

-- Make a link from the file $QUEX_PATH/quex-exe.py to $EXE_PATH/quex where
$EXEC_PATH is a path where executables can be found by your system.
If you work on a unix system, you might want to type

> ln -s /home/elvis/downloads/quex-0.11.2/quex-exe.py \
/home/elvis/bin/quex

In order to create a private directory where your system finds executable
files add the directory '/home/elvis/bin' to your path. Under Unix with a
bash shell, you need to append

export PATH=/home/elvis/bin:$PATH

to your .bashrc file in your /home/elvis directory. You might want to
ensure executable rights with

> chmod a+rx /home/elvis/downloads/quex-0.11.2/quex-exe.py
> chmod a+rx /home/elvis/bin/quex

-- Supply your c++ compiler with the include path '$QUEX_PATH/code_base'. If
you are using g++ simply add the option

-I$(QUEX_PATH)/code_base

to the list of compiler flags. In the subdirectory ./demo you find a list
of examples that have ready-to-rumble makefiles. You may use these
to startup your project.

CONTACT:

Please, send feedback! Any bug you find is likely to result in a unit test
that is executed at any build. Thus, providing bug reports is an essential
support to the stability and quality of the software. If you are using
quex for a famous software project or you just think that quex is just
marvelous, then it also helps if you send me your inputs. Such support
encourages me to work on it harder and more often ...

Please, feel free to send me any coments, critiques or suggestions to

[email protected].

AUTHOR:

Frank-Rene Schaefer