CMake生成的文件导致编译失败

时间:2013-03-04 06:51:36

标签: cmake

我正在使用CMake版本2.8.10.2。 在其中一个build.make文件中,它通过回显文件的内容生成一个version.h文件。这是命令:

echo \#define QGSVERSION \"1c2b025\" >C:/dev/cpp/Quantum-build/qgsversion.h

它最终在.h文件中

\#define  QGSVERSION \"1c2b025\"

编译时,我收到有关stray '\' in program的错误。

定义之前的\#就是问题。看起来CMake希望用#来逃避\。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

提供的CMakeLIst.txt文件存在问题。 在CMakeList.txt文件中声明了

\\\#define QGSVERSION \\\"${REVISION}\\\" >${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h

应该在哪里

\#define QGSVERSION \"${REVISION}\" >${CMAKE_CURRENT_BINARY_DIR}/qgsversion.h

转义序列不正确。