当.ui文件被触及时,CMake Qt5和AUTOUIC不会重建。这是因为CMake在构建过程中会检查.ui文件的时间戳,如果.ui文件没有发生变化,CMake会认为它们不需要重新生成对应的代码。
CMake是一个跨平台的构建工具,用于管理软件构建过程中的各种依赖关系和编译选项。Qt5是一个流行的跨平台应用程序开发框架,其中包括了Qt Designer工具,用于创建用户界面。在使用Qt Designer创建用户界面时,会生成一个.ui文件,其中包含了界面的布局和控件信息。
AUTOUIC是CMake的一个特性,用于自动处理Qt用户界面文件。当CMake检测到项目中包含了.ui文件时,AUTOUIC会自动将.ui文件转换为对应的C++代码,并将其添加到构建过程中。
然而,CMake和AUTOUIC在处理.ui文件时,并不会监测.ui文件的内容变化,而是仅仅检查它们的时间戳。因此,如果你修改了.ui文件的内容,但没有修改它们的时间戳,CMake和AUTOUIC就无法察觉到这些变化,也就不会重新生成对应的代码。
为了解决这个问题,你可以手动修改.ui文件的时间戳,或者在CMakeLists.txt文件中添加一个自定义的依赖规则,以确保在.ui文件发生变化时,CMake和AUTOUIC能够重新生成对应的代码。
总结起来,当.ui文件被触及时,CMake Qt5和AUTOUIC不会重建,除非你手动修改了.ui文件的时间戳或者添加了自定义的依赖规则。
领取专属 10元无门槛券
手把手带您无忧上云