\begin{DoxyAuthor}{Author}
Vincent Torri 
\end{DoxyAuthor}
\begin{DoxyDate}{Date}
2008 (created)
\end{DoxyDate}
\hypertarget{eina_cxx_main_toc}{}\section{Table of Contents}\label{eina_cxx_main_toc}
\begin{DoxyItemize}
\item \mbox{\hyperlink{evil_main_evil_main_intro}{Introduction}} \item \mbox{\hyperlink{evil_main_evil_main_ack}{Acknowledgments}} \item \mbox{\hyperlink{evil_main_evil_main_compiling}{How to compile}} \item \mbox{\hyperlink{evil_main_evil_main_next_steps}{Next Steps}}\end{DoxyItemize}
\hypertarget{evil_main_evil_main_intro}{}\section{Introduction}\label{evil_main_evil_main_intro}
The Evil library is an evil library that ports some evil Unix functions to the Windows (XP or above, or Mobile) platform. The evilness is so huge that the most of the functions are not P\+O\+S\+IX or B\+SD compliant.

These functions are intended to be used in the Enlightenment Foundation Libraries only and can be compiled only on Windows, using M\+S\+Y\+S/\+Min\+GW on Windows, and cross-\/compilation on Unix. This library is minimal in the sense that only the functions needed to compile the E\+FL are available. The purpose of this library is N\+OT to have a full P\+O\+S\+IX emulation et it is N\+OT a replacement of cygwin. To compare the size of the D\+LL themselves, Evil is around 33 KB and cygwin D\+LL is around 800 KB.\hypertarget{evil_main_evil_main_ack}{}\section{Acknowledgments}\label{evil_main_evil_main_ack}
This library has receive some from people interested in the E\+FL or not. Among them, evil thanks to Lars Munch, Raoul Hecky, Nicolas Aguirre, Tor Lillqvist, Lance Fetters, Vincent Richomme, Paul Vixie, Daniel Stenberg, who helped the author of the library in different fields (code and tests).\hypertarget{evil_main_evil_main_compiling}{}\section{How to compile}\label{evil_main_evil_main_compiling}
Evil is a library your application links to. The procedure for this is very simple. You simply have to compile your application with the appropriate compiler flags that the {\ttfamily pkg-\/config} script outputs. For example\+:

Compiling C or C++ files into object files\+:

\begin{DoxyVerb}gcc -c -o main.o main.c `pkg-config --cflags evil`
\end{DoxyVerb}


Linking object files into a binary executable\+:

\begin{DoxyVerb}gcc -o my_application main.o `pkg-config --libs evil`
\end{DoxyVerb}


See \mbox{\hyperlink{pkgconfig}{pkgconfig}}\hypertarget{evil_main_evil_main_next_steps}{}\section{Next Steps}\label{evil_main_evil_main_next_steps}
After you understood what Evil is and installed it in your system you should proceed understanding the programming interface.

Recommended reading\+:

\begin{DoxyItemize}
\item \mbox{\hyperlink{group__Evil__Mman}{Functions that manage memory mappping.}} \item \mbox{\hyperlink{group__Evil__Unistd__Group}{Unistd.\+h functions}} \item \mbox{\hyperlink{group__Evil__Dlfcn}{Functions that manage dynamic-\/link libraries.}} \item Evil\+\_\+\+Langinfo\+\_\+\+Group \item \mbox{\hyperlink{group__Evil__Locale__Group}{locale.\+h functions.}} \item \mbox{\hyperlink{group__Evil__Pwd__Group}{Pwd.\+h functions}} \item \mbox{\hyperlink{group__Evil__Stdio__Group}{Stdio.\+h functions}} \item \mbox{\hyperlink{group__Evil__Main__Group}{Main}} \item \mbox{\hyperlink{group__Evil__Inet__Group}{Inet.\+h functions}} \item \mbox{\hyperlink{group__Evil__Dirent__Group}{Dirent.\+h functions}} \item \mbox{\hyperlink{group__Evil__String__Group}{String.\+h functions.}} \item \mbox{\hyperlink{group__Evil__Stdlib__Group}{Stdlib.\+h functions.}} \item \mbox{\hyperlink{group__Evil__Time__Group}{Time.\+h functions}} \end{DoxyItemize}
