Ovaj projekat je implementacija MicroJava kompajlera i interpretera na LLVM infrastrukturi.
Projekat se moze instalirati kompajliranjem iz koda. Kod je razvijan i testiran na Linuxu, ali bi trebalo da radi i na drugim platformama.
Alati potrebni za izgradnju projekta:
- CMake
- Antlr3
- Odgovarajuce platformsko razvojno okruzenje (Make/GCC, VisualStudio, XCode)
Biblioteke koje treba da su dostupne na sistemu:
- LLVM 3.6
- Antlr3c
Na Debian Linuxu, sve potrebne zavisnosti mogu da se instaliraju na sledeci nacin:
# apt-get install build-essential cmake antlr3 antlr3c-dev \
llvm-3.6 llvm-3.6-dev llvm-3.6-tools
Ukoliko su sve zavisnosti zadovoljene, pokretanje cmake alata ce da napravi odgovarajuce projektne fajlove za trenutnu platformu.
Na Linuxu ce biti generisan Makefile
, pa kompajliranje projeka izgleda ovako:
$ cmake
$ make
Interpreter se pokrece komandom mji
koja od argumenata prima putanju do fajla koji treba izvrsiti.
Kompajler se pokrece komandom mjc
koja osim putanje do fajla opciono prima jos dva argumenta:
-O
- nivo optimizacije, koji moze biti vrednost 0-3 (podrazumevano 2)-t
- tip izlaza koji moze bitiast
- tekstualna reprezentacija apstraktnog sintaksnog stablallvm
- LLVM asemblerbc
- LLVM bajt kodasm
- platformski asemblerobj
- objektli fajl (podrazumevana vrednost)
Da bi se dobio izvrsni fajl, objektni fajl je potrebno linkovati, na primer na sledeci nacin:
$ gcc -o program program.o