Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
VALAC(1)			 User Commands			      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  pro-
       gramming	language features to GNOME developers without imposing any ad-
       ditional	  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	(DEPRECATED AND	IGNORED)

       --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

       --depfile
	      Write  make-style	external dependency information	for build sys-
	      tems to this file

       --list-sources
	      Output a list of all source and binding files which are used

       --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 (DEPRECATED	AND IGNORED)

       --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

       -k, --keep-going
	      Continue as much as possible after an error

       --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
	      Minimum runtime dependency: 'gobject' (default) or 'posix' (min-
	      imal libc)
	      gobject enables GLib's GType runtime type	 system.  The  runtime
	      environment will usually require libgobject and its small	number
	      of  dependencies.	 posix removes the dependency on GLib and dis-
	      ables the	runtime	type system. The profile either	generates  al-
	      ternative	code or	errors at compile time if a Vala language fea-
	      ture is used that	requires the runtime type system. This is use-
	      ful for writing code, for	example, that targets microcontrollers
	      or for extremely small system utilities or container images. The
	      runtime  environment  will usually require a small subset	of the
	      ISO C standard library.

       -q, --quiet
	      Do not print messages to the console

       -v, --verbose
	      Print additional messages	to the console

       --no-color
	      Disable colored output, alias for	--color=never

       --color=WHEN
	      Enable color output, options are 'always', 'never', or 'auto'
	      When no value is given always is implied.	When  neither  --color
	      or  --no-color are declared then --color=auto is used where out-
	      put is colored when stderr is a terminal.

       --target-glib='MAJOR.MINOR', or 'auto'
	      Target version of	glib for code generation

       --gresources=FILE...
	      XML of gresources

       --gresourcesdir=DIRECTORY...
	      Look for resources in DIRECTORY

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

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

       --run-args
	      Arguments	passed to directly compiled executable

       --abi-stability
	      Enable support for ABI stability
	      This changes the current behaviour to output public  members  of
	      classes  and  interfaces	the  same order	as they	appear in Vala
	      source.  For libraries is	recommended to use --abi-stability  to
	      ensure  the  maintainability of the resulting Application	Binary
	      Interface	(ABI).	This option is disabled	by default  for	 back-
	      ward   compatibility  because  it	 can  break  ABI  of  existing
	      projects.

BUGS
       https://gitlab.gnome.org/GNOME/vala/issues

HOMEPAGE OR CONTACT
       https://vala.dev

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

AUTHORS
       J??rg Billeter, Raffaele	Sandrini, Rico Tzschichholz.

Vala 0.56.18			  March	2025			      VALAC(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=valac&sektion=1&manpath=FreeBSD+Ports+14.3.quarterly>

home | help