gpt4 book ai didi

cmake - 如何告诉 CMake 使用相对路径

转载 作者:行者123 更新时间:2023-12-01 03:07:17 25 4
gpt4 key购买 nike

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

[ 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 尽可能多地使用相对路径?

最佳答案

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

曾经有过 CMAKE_USE_RELATIVE_PATHS ,但文档显示:

This variable has no effect. The partially implemented effect it had in previous releases was removed in CMake 3.4.



引用文献
  • CMake FAQ: Why does CMake use full paths, or can I copy my build tree?
  • How do I move my folders created by CMake?
  • 关于cmake - 如何告诉 CMake 使用相对路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45856955/

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