如何告诉CMake使用相对路径

时间:2017-08-24 08:45:21

标签: cmake

如果我制作项目,我可以看到:

[ 50%] Building C object CMakeFiles/hello.dir/hello.c.obj
/cygdrive/c/users/me/Home/bin/iccarm  /cygdrive/c/users/me/Home/sandbox/iar/hello.c  -I/cygdrive/c/users/me/Home/sandbox/iar/foo -I/cygdrive/c/users/me/Home/inc   -o CMakeFiles/hello.dir/hello.c.obj

由于我总是在make目录中调用build,为什么不使用相对路径以提高操作系统的可读性和兼容性?

[ 50%] Building C object CMakeFiles/hello.dir/hello.c.obj
iccarm  hello.c -Ifoo -Iinc -o CMakeFiles/hello.dir/hello.c.obj

不是很好吗?

有没有办法强制CMake尽可能多地使用相对路径?

1 个答案:

答案 0 :(得分:3)

CMake总是使用绝对路径。它是这个概念的一部分。因此,您无法移动生成的构建环境文件,例如将它们置于源代码管理之下或使详细输出更漂亮(您可以使用here之类的规则消息稍微玩一下。

曾经有CMAKE_USE_RELATIVE_PATHS,但文档显示:

  

此变量无效。在CMake 3.4中删除了以前版本中部分实现的效果。

<强>参考