Meson 和 NInja 构建系统:指定二进制文件的存储位置

mle*_*312 6 build prefix ninja meson-build

我有一个需要这样构建的项目:

  1. ./meson.py build

  2. ./ninja -C build install

这效果很好。唯一的事情是:二进制文件存储在(在 Linux 上):/usr/local/bin。这将要求我输入 root 密码,因为二进制文件将被写入 root 访问文件夹(又名/usr/local/bin.

有没有办法将二进制文件安装在/user/home目录中的某个文件夹中,这样就不需要密码?

问题是,每次我调试和更改某些内容时,重建过​​程都会强制重写二进制文件,每次都要求输入密码。

这是我尝试过的:

  1. 在home中创建一个文件夹:mkdir ~/projectbin
  2. 使用 ninja--prefix选项: ./ninja -C --prefix=~/projectbin install

这会引发无法识别的选项错误--prefix

ninja我是和的新手meson,请让我知道如何解决此问题。

小智 16

将选项传递给 Meson 的方法是使用该-D选项。因此,要设置前缀,您应该使用meson -Dprefix=$HOME/projectbin build.

请注意,您在配置时(即调用时meson)设置此值,而不是在构建时(调用时ninja)。