如何在CMake中找到父目录?
假设我和${MYPROJECT_DIR}=/dir1/dir2/dir3/myproject/
想要${PARENT_DIR}=/dir1/dir2/dir3/
。
如何做到这一点?SET(PARENT_DIR ${MYPROJECT_DIR}/../)
似乎不是正确的语法。
发布于 2011-08-12 14:48:55
从CMake 2.8.12开始,建议使用带有DIRECTORY
选项的get_filename_component命令:
get_filename_component(PARENT_DIR ${MYPROJECT_DIR} DIRECTORY)
对于较早版本的CMake,请使用PATH
选项:
set (MYPROJECT_DIR /dir1/dir2/dir3/myproject/)
get_filename_component(PARENT_DIR ${MYPROJECT_DIR} PATH)
发布于 2021-02-08 10:02:14
对我来说,它不起作用(在cmake 3.18)。我最终使用了:
get_filename_component(VAR_PARENT ${MYPROJECT_DIR}/.. ABSOLUTE)
https://stackoverflow.com/questions/7035734
复制相似问题