Vala 编译器valac 具有--output 参数来命名生成的二进制文件。例如:
valac my_source_file.vala --output myprogram
使用valac --help 查找更多编译器选项。
一个简单的Makefile 可以是:
sources = $(wildcard src/*.vala)
myprogram:
valac $(sources) --output myprogram
在项目目录中将其保存为Makefile 并发出命令make 或make myprogram,您将构建二进制文件myprogram。有几点需要注意:
- 制表符用于缩进,以防示例中没有出现
- 当您对源文件进行任何更改时,您需要删除输出文件以重建它
- 通配符用于包含
src 目录中的所有 Vala 源文件
许多新的 Vala 项目都在使用 Meson build system,因为它非常快并且语法更简洁。使用介子,一个简单的meson.build 文件可以是:
project('myprogram project', 'vala', 'c')
dependencies = [
dependency('glib-2.0'),
dependency('gobject-2.0'),
]
sources = []
subdir('src')
executable('myprogram', sources, dependencies: dependencies)
将此保存在项目目录中,然后在src 目录中的meson.build 文件中保存explicitly lists 源文件:
sources += files(
'a.vala',
'b.vala',
)
注意subdir() 使用src 目录中的meson.build 文件将源文件附加到sources 变量。
要构建项目,首先设置构建目录。从项目目录执行此操作:
meson setup builddir
然后构建项目:
ninja -C builddir
对于 Fedora 等基于 Red Hat 的发行版,您可能需要使用 ninja-build。可执行文件myprogram 位于builddir 中。
如果您更改源文件,那么ninja -C builddir 将重新生成,无需删除任何内容。
随着项目的发展,您会发现 Meson 比使用 Makefile 更易于管理。