如果我创建了我的项目,我可以看到这个:
[ 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
既然我总是在build
目录下调用make
,那为什么不使用相对路径来提高可读性,并实现跨操作系统的兼容性呢?
[ 50%] Building C object CMakeFiles/hello.dir/hello.c.obj
iccarm hello.c -Ifoo -Iinc -o CMakeFiles/hello.dir/hello.c.obj
这不是更好吗?
有没有一种方法可以强制CMake尽可能使用相对路径?
CMake
在 Cygwin 上将无法正常工作。这是一个非常令人沮丧的消息。我想知道为什么他们删除了CMAKE_USE_RELATIVE_PATHS
,它本来就很完美... - nowoxcygwin
版本的 CMake 配合使用,无法与 Windows 版本配合使用。我认为它被移除是因为它引起了很多问题(CMake bugtracker 上充满了这些问题)。 - FlorianCMAKE_USE_RELATIVE_PATHS
变量已被移除,因为它存在太多问题。 - Florian