1VALAC(1) User Commands VALAC(1)
2
3
4
6 valac - compiler that translates Vala source code into C source and
7 header files
8
10 valac [OPTION]... [FILE]...
11
13 Vala is a programming language that aims to bring modern pro‐
14 gramming language features to GNOME developers without imposing any
15 additional runtime requirements and without using a different ABI
16 compared to applications and libraries written in C.
17
18 valac, the Vala compiler, is a self-hosting compiler that translates
19 Vala source code into C source and header files. It uses the
20 GObject type system to create classes and interfaces declared in
21 the Vala source code.
22
23 Usage:
24 valac [OPTION?] FILE... - Vala Compiler
25
26 Help Options:
27 -?, --help
28 Show help options
29
30 Application Options:
31 --vapidir=DIRECTORY...
32 Look for package bindings in DIRECTORY
33
34 --girdir=DIRECTORY...
35 Look for .gir files in DIRECTORY
36
37 --metadatadir=DIRECTORY...
38 Look for GIR .metadata files in DIRECTORY
39
40 --pkg=PACKAGE...
41 Include binding for PACKAGE
42
43 --vapi=FILE
44 Output VAPI file name
45
46 --library=NAME
47 Library name
48
49 --shared-library=NAME
50 Shared library name used in generated gir
51
52 --gir=NAME-VERSION.gir
53 GObject-Introspection repository file name
54
55 -b, --basedir=DIRECTORY
56 Base source directory
57
58 -d, --directory=DIRECTORY
59 Change output directory from current working directory
60
61 --version
62 Display version number
63
64 --api-version
65 Display API version number
66
67 -C, --ccode
68 Output C code
69
70 -H, --header=FILE
71 Output C header file
72
73 --use-header
74 Use C header file
75
76 --includedir=DIRECTORY
77 Directory used to include the C header file
78
79 -h, --internal-header=FILE
80 Output internal C header file
81
82 --internal-vapi=FILE
83 Output vapi with internal api
84
85 --fast-vapi
86 Output vapi without performing symbol resolution
87
88 --use-fast-vapi
89 Use --fast-vapi output during this compile
90
91 --vapi-comments
92 Include comments in generated vapi
93
94 --deps Write make-style dependency information to this file
95
96 --symbols=FILE
97 Output symbols file
98
99 -c, --compile
100 Compile but do not link
101
102 -o, --output=FILE
103 Place output in file FILE
104
105 -g, --debug
106 Produce debug information
107
108 --thread
109 Enable multithreading support (DEPRECATED AND IGNORED)
110
111 --enable-mem-profiler
112 Enable GLib memory profiler
113
114 -D, --define=SYMBOL...
115 Define SYMBOL
116
117 --main=SYMBOL...
118 Use SYMBOL as entry point
119
120 --nostdpkg
121 Do not include standard packages
122
123 --disable-assert
124 Disable assertions
125
126 --enable-checking
127 Enable additional run-time checks
128
129 --enable-deprecated
130 Enable deprecated features
131
132 --hide-internal
133 Hide symbols marked as internal
134
135 --enable-experimental
136 Enable experimental features
137
138 --disable-warnings
139 Disable warnings
140
141 --fatal-warnings
142 Treat warnings as fatal
143
144 --disable-since-check
145 Do not check whether used symbols exist in local packages
146
147 -k, --keep-going
148 Continue as much as possible after an error
149
150 --enable-experimental-non-null
151 Enable experimental enhancements for non-null types
152
153 --enable-gobject-tracing
154 Enable GObject creation tracing
155
156 --cc=COMMAND
157 Use COMMAND as C compiler command
158
159 -X, --Xcc=OPTION...
160 Pass OPTION to the C compiler
161
162 --pkg-config=COMMAND
163 Use COMMAND as pkg-config command
164
165 --dump-tree=FILE
166 Write code tree to FILE
167
168 --save-temps
169 Keep temporary files
170
171 --profile=PROFILE
172 Use the given profile instead of the default
173
174 -q, --quiet
175 Do not print messages to the console
176
177 -v, --verbose
178 Print additional messages to the console
179
180 --no-color
181 Disable colored output, alias for --color=never
182
183 --color=WHEN
184 Enable color output, options are 'always', 'never', or 'auto'
185 When no value is given always is implied. When neither --color
186 or --no-color are declared then --color=auto is used where out‐
187 put is colored when stderr is a terminal.
188
189 --target-glib='MAJOR.MINOR', or 'auto'
190 Target version of glib for code generation
191
192 --gresources=FILE...
193 XML of gresources
194
195 --gresourcesdir=DIRECTORY...
196 Look for resources in DIRECTORY
197
198 --enable-version-header
199 Write vala build version in generated files
200
201 --disable-version-header
202 Do not write vala build version in generated files
203
204 --run-args
205 Arguments passed to directly compiled executeable
206
207 --abi-stability
208 Enable support for ABI stability
209 This changes the current behaviour to output public members of
210 classes and interfaces the same order as they appear in Vala
211 source. For libraries is recommended to use --abi-stability to
212 ensure the maintainability of the resulting Application Binary
213 Interface (ABI). This option is disabled by default for back‐
214 ward compatibility because it can break ABI of existing
215 projects.
216
218 https://gitlab.gnome.org/GNOME/vala/issues
219
221 https://wiki.gnome.org/Projects/Vala
222
224 Interfaces, properties, signals, foreach, lambda expressions, type
225 inference for local variables, generics, non-null types, assisted mem‐
226 ory management, exception handling
227
229 J??rg Billeter, Raffaele Sandrini.
230
231
232
233valac 0.46.5 November 2019 VALAC(1)