|Name||Modified||Size||Downloads / Week||Status|
|Totals: 1 Item||1.1 MB|
CIL is a front-end for the C programming language that facilitates program analysis and transformation. CIL will parse and typecheck a program, and compile it into a simplified subset of C.
CIL supports ANSI C as well as most of the extensions of the GNU C and Microsoft C compilers. A Perl script acts as a drop in replacement for either gcc or Microsoft's cl, and allows merging of the source files in your project. Other features include support for control-flow and points-to analyses.
Run the following commands to build and install CIL:
./configure make make test # regression test suite, optionnal make install # as root or using sudo
If you want to install to some other directory, you can change the configure step like this:
FORCE_PERL_PREFIX=1 ./configure --prefix=/opt/cil
You only need the OCaml compiler, perl, and ocamlfind for the installation. (Of course, you also need some C compiler.)
You can use cilly (installed in /usr/local/bin by default) as a drop-in replacement for gcc to compile and link your programs.
You can also use CIL as a library to write your own programs. For instance in the OCaml toplevel using findlib:
$ ocaml Objective Caml version 4.00.1 # #use "topfind";; [...] # #require "cil";; [...] # Cil.cilVersion;; - : string = "1.7.2"
The documentation is located in the doc/html/cil directory. The API documentation (generated by ocamldoc) is in the api subdirectory.
To (re)build the doc, you need Hevea and run:
You can also browse the documentation online.
CIL is maintained by Gabriel Kerneis email@example.com