Qt compilation error related to jom.exe



  • Hi,
    I have experienced some weird behaviour of qt creator.

    1. I have one project i have run that project using nmake instead of jom.exe

    At that time, project was successfully build and run smoothly.
    But when i run the project with jom.exe i am getting error as mentioned in below mentioned link
    Error image

    Can anyone have an idea? Why is it so?


  • Moderators

    Hi and welcome to devnet

    AFAIK the main advantage of jom is the multi-threading capability. It allows parallel compilation of several source files and is speeding up the overall compilation process. It is basically simulating the "-j" option of the different make. nmake does not support multiple threads/jobs outside of the visual studio environment. Therefore nmake will perform all actions sequentially one after the other.

    The error messages are coming up when files are deleted. My assumption is that these files are deleted in parallel processes running at the same time. jom is presumably starting an action when it is still valid and does this in parallel for the same files. When one action has deleted successfully the file, the other action will face then the problem.

    Unfortunately I do not know a cure since I am not using msvc compiler and jom. Possibly you can limit the number of parallel jobs issued by jom. Otherwise you can use nmake instead. Alternatively, you may ignore those error messages as long as creator is not crashing or causing other problems.



  • @koahnig
    Thanks for looking into problem
    I got your point. and as you said i had also the same doubt that it was causing due to parallel execution of jom. as a part of solution i thought i need to change in .pro file in such a way that jom can interpret correctly,
    Is this ok to implement?

    And one more thing also i found is that When i start debugging using nmake.exe it takes around 10 minutes to just do one step into process and when i am using jom.exe for debugging it takes only 30 sec / 1 min.
    i don't know what is the story behind this....(may be jom performs parallel execution that's why)


  • Moderators

    @ankit-thakar said:

    @koahnig
    Thanks for looking into problem
    I got your point. and as you said i had also the same doubt that it was causing due to parallel execution of jom. as a part of solution i thought i need to change in .pro file in such a way that jom can interpret correctly,
    Is this ok to implement?
    I do not know, since I am not using msvc anymore. My experience is with msvc 2005 and Qt libs, but that is outdated for sure (and also hard to remember)

    And one more thing also i found is that When i start debugging using nmake.exe it takes around 10 minutes to just do one step into process and when i am using jom.exe for debugging it takes only 30 sec / 1 min.
    i don't know what is the story behind this....(may be jom performs parallel execution that's why)

    I do not think that this is directly related. jom is basically a substitute for nmake. The only influence is can imagine is that nmake/jom is started prior to the debugging process. What could have happened is that nmake had to compile your whole project. However, 10 minutes is a pretty long time and requires a larger project I would expect. Anyway you will see in the compilation output, when all is compiled. You can compare then to the procedure with jom. The start of debugging itself should be independent of jom and nmake afterwards. I do not know that there could be an influence of multi-threading on the debugging process. But again I am not using msvc compiler.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.