首页 > 解决方案 > 从介子脚本修改安装前缀

问题描述

我需要在介子构建脚本中修改安装前缀选项...

我的想法是,当用户选择一些特殊选项时,安装前缀是从外部工具获取的(具体来说,使用${CORSS}gcc -print-sysroot

标签: meson-build

解决方案


不能在介子构建脚本本身中设置前缀,它是一个内置的项目选项(检查这个),因此只能在命令行中设置:

meson --prefix `${CROSS}gcc --print-sysroot` builddir 

这应该不是问题,因为它应该设置构建目录一次。但无论如何,最好将它放在一些脚本中(因为很可能必须配置几个选项才能从头开始设置项目,例如我猜你还需要使用 --cross-file <> 设置交叉编译文件)。

如果您确实需要对安装位置进行精细控制,可以使用参数install_dir for executable()命令来覆盖前缀,以及一些与安装相关的命令:install_headers()install_data()具有相同的功能。甚至可以添加自定义安装脚本

meson.add_install_script('myscript.sh')

查看此文档页面了解详细信息。但是,这样做的缺点是脚本可能变得不可移植或难以维护。


推荐阅读