我想用Meson用 C++ 构建一个小游戏。假设这些是我的文件:
.
├── img
│ └── img.png
├── meson.buid
└── src
├── main.cpp
└── meson.build
以下是meson.buid
文件:
# meson.build
project('mygame', 'cpp')
subdir('src')
pkgdatadir = join_paths(get_option('datadir'), 'mygame')
install_subdir('img', install_dir : join_paths([pkgdatadir, 'img']))
第二个文件:
# src/meson.build
executable('mygame', 'main.cpp', install : true)
在我的 C++ 代码中,我应该使用什么路径以可移植(相对?)方式(Windows、OS X、Linux)加载资产文件,因为我可能已经创建了捆绑应用程序或在系统文件层次结构 ?
当我ninja
在构建目录中构建时,我还希望文件路径能够正常工作,而无需安装所有游戏数据。
我想DATA_PREFIX
在编译时添加一个定义集,或者使用环境变量。
请参阅http://mesonbuild.com/Installing.html和http://mesonbuild.com/Reference-manual.html#install_data。
谢谢你。