cparser adalah parser C99 keturunan rekursif yang ditulis dalam C99. Ini berisi preprocessor, lexer, parser, membuat AST dan melakukan analisis semantik. Ini bertindak sebagai frontend ke perpustakaan representasi perantara libFirm. Dengan cara ini optimasi dan pembuatan kode dilakukan. Kompiler mendukung kompilasi silang ke beberapa arsitektur target dengan saklar baris perintah. Muncul dengan logika driver untuk memanggil assembler dan linker serta mengurai opsi baris perintah. Hal ini memungkinkannya menjadi pengganti gcc atau clang dalam banyak situasi.
Persyaratan:
Buka paket libfirm di direktori bernama libfirm di direktori sumber atau Anda dapat mengatur lokasi alternatif dengan file 'config.mak'. Cukup ketik 'make' di direktori sumber. Hasilnya dimasukkan ke dalam direktori bernama "build". Anda dapat mengganti flag praprosesor, compiler, dan linker yang ada serta jalur bawaan untuk direktori penyertaan dengan membuat file 'config.mak'.
cparser memiliki sistem build cmake tambahan. CMake adalah sistem pembangunan yang lebih kompleks daripada pembangunan berbasis make dan sebagian besar pengembang cparser tidak menggunakannya. Namun ia dapat mengadaptasi flag compiler dan linker untuk membangun perpustakaan bersama untuk sistem yang lebih luas, menyediakan target instalasi dan seringkali lebih familiar bagi orang yang menyiapkan paket untuk distribusi.
Meskipun cparser sering kali berjalan dengan baik dari direktori source/build, instalasi yang tepat harus dikonfigurasi dengan jalur sistem yang benar. Untuk ini, file config.mak
harus dibuat dan variabel berikut ditetapkan dengan tepat untuk sistem: PREFIX
, SYSTEM_INCLUDE_DIR
, LOCAL_INCLUDE_DIR
, COMPILER_INCLUDE_DIR
, MULTILIB_M32_TRIPLE
, MULTILIB_M64_TRIPLE
, variant=optimize
. Variabel dapat didefinisikan kosong; Lihat config.default.mak
dan Makefile
untuk detailnya.
Situs web resmi: http://libfirm.org/
Hubungi Email: [email protected]
Milis: https://lists.ira.uni-karlsruhe.de/mailman/listinfo/firm
Pelacak Bug: http://pp.ipd.kit.edu/~firm/bugs
Obrolan relai internet: irc://chat.freenode.net/#firm