VALAC(1)

NAME
valac - compiler that translates Vala source code into C source and header files

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

DESCRIPTION
Vala is a 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.

  Usage:

    valac [OPTION?] FILE... - Vala Compiler

  Help Options:

-?, --help
    Show help options

  Application Options:

--vapidir=DIRECTORY...
    Look for package bindings in DIRECTORY

--girdir=DIRECTORY...
    Look for .gir files in DIRECTORY

--metadatadir=DIRECTORY...
    Look for GIR .metadata files in DIRECTORY

--pkg=PACKAGE...
    Include binding for PACKAGE

--vapi=FILE
    Output VAPI file name

--library=NAME
    Library name

--shared-library=NAME
    Shared library name used in generated gir

--gir=NAME-VERSION.gir
    GObject-Introspection repository file name

-b, --basedir=DIRECTORY
    Base source directory

-d, --directory=DIRECTORY
    Change output directory from current working directory

--version
    Display version number

--api-version
    Display API version number

-C, --ccode
    Output C code

-H, --header=FILE
    Output C header file

--use-header
    Use C header file

--includedir=DIRECTORY
    Directory used to include the C header file

-h, --internal-header=FILE
    Output internal C header file

--internal-vapi=FILE
    Output vapi with internal api

--fast-vapi
    Output vapi without performing symbol resolution

--use-fast-vapi
    Use --fast-vapi output during this compile

--vapi-comments
    Include comments in generated vapi

--deps
    Write make-style dependency information to this file

--symbols=FILE
    Output symbols file

-c, --compile
    Compile but do not link

-o, --output=FILE
    Place output in file FILE

-g, --debug
    Produce debug information

--thread
    Enable multithreading support

--enable-mem-profiler
    Enable GLib memory profiler

-D, --define=SYMBOL...
    Define SYMBOL

--main=SYMBOL...
    Use SYMBOL as entry point

--nostdpkg
    Do not include standard packages

--disable-assert
    Disable assertions

--enable-checking
    Enable additional run-time checks

--enable-deprecated
    Enable deprecated features

--hide-internal
    Hide symbols marked as internal

--enable-experimental
    Enable experimental features

--disable-warnings
    Disable warnings

--fatal-warnings
    Treat warnings as fatal

--disable-since-check
    Do not check whether used symbols exist in local packages

--enable-experimental-non-null
    Enable experimental enhancements for non-null types

--enable-gobject-tracing
    Enable GObject creation tracing

--cc=COMMAND
    Use COMMAND as C compiler command

-X, --Xcc=OPTION...
    Pass OPTION to the C compiler

--pkg-config=COMMAND
    Use COMMAND as pkg-config command

--dump-tree=FILE
    Write code tree to FILE

--save-temps
    Keep temporary files

--profile=PROFILE
    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

--no-color
    Disable colored output

--target-glib=MAJOR.MINOR
    Target version of glib for code generation

--gresources=FILE...
    XML of gresources

--enable-version-header
    Write vala build version in generated files

--disable-version-header
    Do not write vala build version in generated files

BUGS
https://bugzilla.gnome.org/page.cgi?id=browse.html&product=vala

HOMEPAGE OR CONTACT
https://wiki.gnome.org/Projects/Vala

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

AUTHORS
J??rg Billeter, Raffaele Sandrini.