Tag Archives: QT programming

JOM error 2 problem when qtcreator uses cmake to build a project

When qtcreator uses the MSVC compilation environment to build a project, a JOM: C: /… /… [cmtc_fe41e \ fast] error 2 error will occur due to incorrect configuration. Here are my solutions and understanding of this problem. I hope it can help small partners who encounter the same problem.

Error screenshot

Error reason

When qtcreator uses cmake to build a project, it will first test the environment configuration. If you have used cmake GUI or the command line to generate the corresponding project file (vs. vcxproj or Makefile, etc.) through cmakelists.txt, you will understand this process. Cmake uses the – g parameter to see which specific projects are supported, called cmake generators.

Cmake command line generates makefiles:
MD build
CD build
cmake – G “nmake makefiles JOM”…
#[[
… Indicates that cmakelists.txt is placed in the upper level directory. In this step, cmake will automatically detect the environment. If an error occurs, you cannot generate project files or makefiles
#]]
nmake

Cmake GUI: after setting, click Configure to generate if there is no problem

so the JOM error above is that cmake detects that the environment configuration is incorrect. At this time, you will see that qtcreator will not load the source file at all. Only one cmakelists.txt

open cmake’s error log file, and you will find that some tools needed in the construction process cannot be found:

“D:\Program Files (x86)\CMake\bin\cmake.exe” -E vs_ link_ exe
–intdir=CMakeFiles\cmTC_ 5b162.dir
–rc=rc
–mt=CMAKE_ MT-NOTFOUND
–manifests
– D:\PROGRA1\MICROS1.0\VC\bin\amd64\link.exe /nologo @CMakeFiles\cmTC_ 5b162.dir\objects1.rsp @C:\Users\ADMINI~1\AppData\Local\Temp\cmTC_ 5b162.exe.9516.577.jom

RC pass 1: command “RC/fo cmakefiles \ cmtc_5b162. Dir/manifest. Res cmakefiles \ cmtc_5b162. Dir/manifest. RC” failed (exit code 0) with the following output:
the system cannot find the specified file. jom: C:\Users\Administrator\AppData\Local\Temp\QtCreator-liCfaX\qtc-cmake-pToFXfXx\CMakeFiles\CMakeTmp\CMakeFiles\cmTC_ 5b162.dir\build.make [cmTC_5b162.exe] Error 2

jom: C:\Users\Administrator\AppData\Local\Temp\QtCreator-liCfaX\qtc-cmake-pToFXfXx\CMakeFiles\CMakeTmp\Makefile [cmTC_5b162\fast] Error 2

RC is rc.exe, and the resource compiler
MT is mt.exe

resolvent

It’s easy to know the cause of the error

First, add the path of jom.exe to the environment variable path
${QT installation directory} \ tools \ qtcreator \ bin

Then add the paths of rc.exe and mt.exe to the environment variable path
C: \ program files (x86) \ windows kits \ 10 \ bin \ 10.0.17763.0 \ x86
depending on the system version and 32-bit/64 bit, find out for yourself

When there are no problems, you can build the project

[QT] solve the problem that the trigger of QPushButton cannot trigger setvisible

Finding problems

I want to make a tomato clock software and learn QT by the way. But when I did it, I found that toggled could not trigger setvisible (). After comparing the source code of C + + GUI QT4 programming, I found that it was a detail problem about QPushButton, which was not clear.

The effect you want to complete is as follows:

Solution

QPushButton must be checkable and must be selected when designing with designer.

The specific operation is as follows:

Problem exploration

By default, checkable is not selected, and button is the trigger button by default. When you press it, it will pop up immediately

After checkable is selected, the button becomes a toggle button, which can have two states: Press/pop. This is why the state of the task list button is different in the two images
————————————————

Link to the original text: https://blog.csdn.net/humanking7/article/details/44095283