valac(1) compiler that translates Vala source code into C source and header files


valac [OPTION]... [FILE]...


Vala is a new programming language that aims to bring modern programming language features to GNOME developers without imposing any additional runtime requirements and without using a different ABI compared to applications and libraries written in C.

valac, the Vala compiler, is a self-hosting compiler that translates Vala source code into C source and header files. It uses the GObject type system to create classes and interfaces declared in the Vala source code.


Look for package bindings in DIRECTORY
Look for .gir files in DIRECTORY
Look for GIR .metadata files in DIRECTORY
Include binding for PACKAGE
Output VAPI file name
Library name
GObject-Introspection repository file name
-b, --basedir=DIRECTORY
Base source directory
-d, --directory=DIRECTORY
Output directory
Display version number
-C, --ccode
Output C code
-H, --header=FILE
Output C header file
Use C header file
Directory used to include the C header file
-h, --internal-header=FILE
Output internal C header file
Output vapi with internal api
Output symbols file
-c, --compile
Compile but do not link
-o, --output=FILE
Place output in file FILE
-g, --debug
Produce debug information
Enable multithreading support
Enable GLib memory profiler
-D, --define=SYMBOL...
Use SYMBOL as entry point
Do not include standard packages
Disable assertions
Enable additional run-time checks
Enable deprecated features
Enable experimental features
Disable warnings
Treat warnings as fatal
Enable experimental enhancements for non-null types
Use COMMAND as C compiler command
-X, --Xcc=OPTION...
Pass OPTION. to the C compiler
Write code tree to FILE
Keep temporary files
Use the given profile instead of the default
-q, --quiet
Do not print messages to the console
-v, --verbose
Print additional messages to the console
Target version of glib for code generation
Write vala build version in generated files
Do not write vala build version in generated files


Interfaces, properties, signals, foreach, lambda expressions, type inference for local variables, generics, non-null types, assisted memory management, exception handling



Jürg Billeter, Raffaele Sandrini.

Man page written to conform with Debian by Marc-Andre Lureau.