我目前正在尝试使用CMake进行交叉编译。但是,CMake似乎忽略了
指定的工具链cmake -DCMAKE_TOOLCHAIN_FILE=my-toolchain.cmake .
或
cmake . -DCMAKE_TOOLCHAIN_FILE=my-toolchain.cmake
如果省略CMAKE_TOOLCHAIN_FILE选项,则会生成完全相同的Makefile。此外,如果我故意提供错误的文件名或在工具链文件中插入语法和路径错误,CMake也不会抱怨。
有没有办法在CMake运行期间获得更多错误/调试输出?我能找到的唯一选择是“--debug-output”,这在我的情况下并不是很有帮助。
答案 0 :(得分:12)
我的错误。 CMake总是重新生成现有的构建树。通过删除构建目录中的CMakeCache.txt,CMake将被强制生成新的构建树,并且不再忽略CMAKE_TOOLCHAIN_FILE选项。请参阅CMake FAQ。