gpt4 book ai didi

shell - 如何从 Meson 脚本运行 shell 命令?

转载 作者:行者123 更新时间:2023-12-05 03:04:53 32 4
gpt4 key购买 nike

如何从 Meson 构建脚本运行 shell 命令(例如 cp,即复制)?

我试过这段代码:

r = run_command('cp', 'test.txt', 'test2.txt')

if r.returncode() != 0
warning('Command failed')
endif

但它什么也没做。
run_command 成功运行(返回 0),但未复制文件。
如果我将 cp 替换为 cp3,我会收到来自 Meson 的错误消息,进程终止并且它甚至不会到达下一行。
如果我用 test0.txt 替换 test.txt,我会从脚本中收到一条错误消息。

所以脚本的行为是正确的,但命令不会在文件系统上留下任何痕迹。

run_command 是从 Meson 运行 shell 命令的唯一方法吗?我做错了什么?


引用:https://mesonbuild.com/External-commands.html

最佳答案

命令从unspecified开始运行目录,因此,请尝试指定完整的文件名,例如:

source = join_paths(meson.source_root(), 'test.txt')
dest = join_paths(meson.build_root(), 'test2.txt')
message('copying @0@ to @1@ ...'.format(source, dest))
r = run_command('cp', source, dest)

关于shell - 如何从 Meson 脚本运行 shell 命令?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52608835/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com