介子构建:指定输出目录

Meson build: Specify output directories

我有一个构建共享库的 c++ 项目,它还有一些二进制文件,用于将资源打包到单个文件中,并将一些东西转编译成文件,以便库在运行时更容易处理。为了测试该项目,我进行了一些测试。之前我曾经使用手写的makefile来构建以下结构:

build/
  lib/
  bin/
  tests/
src/
  graphics/
  ui/
  util/
  network

顾名思义,源文件在 src/ 中,.so 文件在 build/lib/ 中,辅助二进制文件在 build/bin/ 中,测试文件在 build/tests.

我已经设法让 meson 构建所有内容,但是它在 build/ 中构建所有内容。如何在目标中指定输出路径?

谢谢!

安装可以查看官方文档here。 您需要提供 installinstall_dir

executable('prog', 'prog.c', install : true, install_dir : 'my/special/dir')

我通常做的测试是在测试目录中创建meson.build,然后从顶层meson.build调用subdir('tests')。这是结构:

── meson.build

└── test
    ├── meson.build

    ├── component_tests

    │   └── meson.build

    └── unit_tests

        └── meson.build