我们正在从MPC转移到CMake。
我们提供一个带有一些示例的库。这些示例附带有makefile。
问题是,由CMake生成的makefile包含绝对路径而不是相对路径:
# The main all target
all: cmake_check_build_system
cd /.../Projects/cpp_trunk && $(CMAKE_COMMAND) -E cmake_progress_start /.../Projects/cpp_trunk/CMakeFiles /.../Projects/cpp_trunk/samples/CMakeFiles/progress.make
cd /.../Projects/cpp_trunk && $(MAKE) -f CMakeFiles/Makefile2 samples/all
$(CMAKE_COMMAND) -E cmake_progress_start /.../cpp_trunk/CMakeFiles 0
所以,当它被复制时就会变得损坏。 有没有什么方法可以解决这个问题?
更新:我已经阅读了常见问题解答,但我的问题仍然存在,也许有人成功地绕过了这个问题?
file()
并自己编写一个,或者您可以使用configure()
并让CMake填充空白。如果您编写自己的工具,它可以通过CMake使用add_custom_command()
启动。这不是很好的解决方案,但在您的情况下它会起作用。 - Lindydancer