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 --enable-experimental-non-null
148 Enable experimental enhancements for non-null types
149
150 --enable-gobject-tracing
151 Enable GObject creation tracing
152
153 --cc=COMMAND
154 Use COMMAND as C compiler command
155
156 -X, --Xcc=OPTION...
157 Pass OPTION to the C compiler
158
159 --pkg-config=COMMAND
160 Use COMMAND as pkg-config command
161
162 --dump-tree=FILE
163 Write code tree to FILE
164
165 --save-temps
166 Keep temporary files
167
168 --profile=PROFILE
169 Use the given profile instead of the default
170
171 -q, --quiet
172 Do not print messages to the console
173
174 -v, --verbose
175 Print additional messages to the console
176
177 --no-color
178 Disable colored output, alias for --color=never
179
180 --color=WHEN
181 Enable color output, options are 'always', 'never', or 'auto'
182 When no value is given always is implied. When neither --color
183 or --no-color are declared then --color=auto is used where out‐
184 put is colored when stderr is a terminal.
185
186 --target-glib=MAJOR.MINOR
187 Target version of glib for code generation
188
189 --gresources=FILE...
190 XML of gresources
191
192 --gresourcesdir=DIRECTORY...
193 Look for resources in DIRECTORY
194
195 --enable-version-header
196 Write vala build version in generated files
197
198 --disable-version-header
199 Do not write vala build version in generated files
200
201 --run-args
202 Arguments passed to directly compiled executeable
203
204 --abi-stability
205 Enable support for ABI stability
206 This changes the current behaviour to output public members of
207 classes and interfaces the same order as they appear in Vala
208 source. For libraries is recommended to use --abi-stability to
209 ensure the maintainability of the resulting Application Binary
210 Interface (ABI). This option is disabled by default for back‐
211 ward compatibility because it can break ABI of existing
212 projects.
213
215 https://gitlab.gnome.org/GNOME/vala/issues
216
218 https://wiki.gnome.org/Projects/Vala
219
221 Interfaces, properties, signals, foreach, lambda expressions, type
222 inference for local variables, generics, non-null types, assisted mem‐
223 ory management, exception handling
224
226 J??rg Billeter, Raffaele Sandrini.
227
228
229
230valac 0.42.7 April 2019 VALAC(1)