moc.exe cant open moc_xxx.cpp.json for reading
-
Hello,
I have following output
[1/29 11.1/sec] Running moc --collect-json for target Core FAILED: src/core/app/meta_types/qt6core_release_metatypes.json.gen src/core/app/meta_types/qt6core_release_metatypes.json C:/Dev/Build/MyProject/Release/6.6.3/src/core/app/meta_types/qt6core_release_metatypes.json.gen C:/Dev/Build/MyProject/Release/6.6.3/src/core/app/meta_types/qt6core_release_metatypes.json C:\Windows\system32\cmd.exe /C "cd /D C:\Dev\Build\MyProject\Release\6.6.3\src\core\app && C:\Dev\Qt\6.6.3\msvc2019_64\.\bin\moc.exe -o C:/Dev/Build/MyProject/Release/6.6.3/src/core/app/meta_types/qt6core_release_metatypes.json.gen --collect-json @C:/Dev/Build/MyProject/Release/6.6.3/src/core/app/meta_types/Core_json_file_list.txt && C:\Dev\Qt\Tools\CMake_64\bin\cmake.exe -E copy_if_different C:/Dev/Build/MyProject/Release/6.6.3/src/core/app/meta_types/qt6core_release_metatypes.json.gen C:/Dev/Build/MyProject/Release/6.6.3/src/core/app/meta_types/qt6core_release_metatypes.json" Error opening C:/Dev/Build/MyProject/Release/6.6.3/src/core/app/Core_autogen/include/../Q7M6OBXGTV/moc_StateMachine.cpp.json for reading ninja: build stopped: subcommand failed.The contents of
C:\Dev\Build\MyProject\Release\6.6.3\src\core\app\meta_types\Core_json_file_list.txt
include following line
C:/Dev/Build/MyProject/Release/6.6.3/src/core/app/Core_autogen/include/../Q7M6OBXGTV/moc_StateMachine.cpp.json
but themoc_StateMachine.cpp.jsonis located in
C:/Dev/Build/MyProject/Release/6.6.3/src/core/app/Core_autogen/include/moc_StateMachine.cpp.jsonIn my
C:\Dev\Build\MyProject\Release\6.6.3\src\core\app\meta_types\qt6core_release_metatypes.jsonI can see, that theStateMachineis listed twice. As seen below. . . "classes": [ { "className": "StateMachine", "enums": [ { "isClass": false, "isFlag": false, "name": "State", "values": [ "Disconnect", "Connect", "Start", "Stop" ] }, { "isClass": false, "isFlag": false, "name": "Transition", "values": [ "AttemptDisconnect", "AttemptConnect", "AttemptStart", "AttemptStop" ] } ], "methods": [ { "access": "public", "name": "initialized", "returnType": "bool" } ], "object": true, "qualifiedClassName": "StateMachine", "signals": [ { "access": "public", "arguments": [ { "type": "State" } ], "name": "echoStateChange", "returnType": "void" }, { "access": "public", "arguments": [ { "type": "qint32" } ], "name": "echoTransitionDone", "returnType": "void" } ], "slots": [ { "access": "public", "arguments": [ { "name": "targetState", "type": "State" } ], "name": "recEchoStateChangeRequest", "returnType": "void" }, { "access": "public", "arguments": [ { "name": "state", "type": "qint32" } ], "name": "recEchoTransitionDone", "returnType": "void" } ], "superClasses": [ { "access": "public", "name": "QObject" } ] } ], "inputFile": "StateMachine.h", "outputRevision": 68 }, { "classes": [ { "className": "StateMachine", "enums": [ { "isClass": false, "isFlag": false, "name": "State", "values": [ "Disconnect", "Connect", "Start", "Stop" ] }, { "isClass": false, "isFlag": false, "name": "Transition", "values": [ "AttemptDisconnect", "AttemptConnect", "AttemptStart", "AttemptStop" ] } ], "methods": [ { "access": "public", "name": "initialized", "returnType": "bool" } ], "object": true, "qualifiedClassName": "StateMachine", "signals": [ { "access": "public", "arguments": [ { "type": "State" } ], "name": "echoStateChange", "returnType": "void" }, { "access": "public", "arguments": [ { "type": "qint32" } ], "name": "echoTransitionDone", "returnType": "void" } ], "slots": [ { "access": "public", "arguments": [ { "name": "targetState", "type": "State" } ], "name": "recEchoStateChangeRequest", "returnType": "void" }, { "access": "public", "arguments": [ { "name": "state", "type": "qint32" } ], "name": "recEchoTransitionDone", "returnType": "void" } ], "superClasses": [ { "access": "public", "name": "QObject" } ] } ], "inputFile": "StateMachine.h", "outputRevision": 68 }, . . .I checked my cmake files if there was any obvious error from my site. I couldnt finy any.
Everytime I run cmake, the wrong path gets rewritten into the file and I have to manually delete the generated folder ID inbetween.
After readjusting manually, I can build successfully.Does anyone have an idea?