检查文件具有使用CMake的执行权限

问题描述 投票:0回答:1

我有一个CMakeLists.txt,要求某些输入文件具有写入权限,否则make进程将失败并显示相当模糊的“Permission denied Error 126”消息。 The page here describes the usage,关键点是:

为了使这个cfg文件可用,它必须是可执行的,所以让我们使用以下命令使其可执行

chmod a+x cfg/Tutorials.cfg

接下来,我们需要将以下行添加到CMakeLists.txt中。对于Groovy及以上版本

generate_dynamic_reconfigure_options( cfg/Tutorials.cfg #... )

add_dependencies(example_node ${PROJECT_NAME}_gencfg)

如果我忘记在chmod上运行cfg/Tutorials.cfg,那么我怎么能改变上面的片段以便做一些合理的事情因此它不可执行?

permissions cmake
1个回答
0
投票

如关键点所述,您必须通过chmod 0555使文件可执行,但在执行此操作时必须小心。通过chmod 0555,即使是除root之外的文件的所有者也被拒绝写入权限。我建议使用0775或其他更好的东西,因为它授予读写权限。

© www.soinside.com 2019 - 2024. All rights reserved.