June 24, 2011

WilliamU WilliamU
Lab Rat
63 posts

Project’s exe not being rebuilt when a dependant .lib is updated.

 

I have a gui application project that comprises of 3 subdirs projects containing .lib files. When I update any of the .lib project’s sources and do a ^r or ^b the changes are compiled but the .exe is never updated to reflect this.

According to Creator’s Projects tab all of the dependencies are set. I added a qDebug() << “Boo” ; into one of the libraries sources and did a ^r to build and run. But I never saw the output, so I tweaked one of the application’s source files and again did a ^r and this time the text appeared in the console!

I guess I must be missing something but I can’t see what or where it is, anyone got any ideas?

P.S. ^ = Ctrl key

 Signature 

Regards,

William

4 replies

June 24, 2011

Bradley Bradley
Lab Rat
314 posts

I haven’t used Creator’s dependency settings myself, but perhaps it also needs one of these:

http://doc.qt.nokia.com/latest/qmake-variable-reference.html#pre-targetdeps

http://doc.qt.nokia.com/latest/qmake-environment-reference.html#library-dependencies

 Signature 

Nokia Certified Qt Specialist.

June 25, 2011

WilliamU WilliamU
Lab Rat
63 posts

Hi Bradley,

The PRE_TARGETDEPS option had no obvious effect on the build process, so I thought I would try the second suggestion, but this resulted in a broken build:

  1. ...
  2. jom 1.0.5 - empower your cores
  3.  
  4. ipo: error #11018: Cannot open Files
  5. ipo: error #11018: Cannot open (x86)/Intel/ComposerXE-2011/ipp/lib/intel64
  6. ipo: error #11018: Cannot open C:/Program
  7. ipo: error #11018: Cannot open Files
  8. ipo: error #11018: Cannot open (x86)/Intel/ComposerXE-2011/ipp/lib/intel64\ippcore.lib
  9. ipo: error #11018: Cannot open C:/Program
  10. ipo: error #11018: Cannot open Files
  11. ipo: error #11018: Cannot open (x86)/Intel/ComposerXE-2011/ipp/lib/intel64\ippcp.lib
  12. ipo: error #11018: Cannot open Files
  13. ipo: error #11018: Cannot open (x86)/Intel/ComposerXE-2011/compiler/lib/intel64
  14. ipo: error #11018: Cannot open Files
  15. ipo: error #11018: Cannot open (x86)/Intel/ComposerXE-2011/ipp/lib/intel64
  16. ipo: error #11018: Cannot open C:/Program
  17. ipo: error #11018: Cannot open (x86)/Intel/ComposerXE-2011/ipp/lib/intel64\ippcore.lib
  18. ipo: error #11018: Cannot open (x86)/Intel/ComposerXE-2011/ipp/lib/intel64\ippcp.lib
  19. LINK : fatal error LNK1181: cannot open input file 'Files.obj'
  20. xilink: executing 'link'
  21. command failed with exit code 1181
  22. The process "C:\Qt\qtcreator-2.1.0\bin\jom.exe" exited with code 2.
  23. Error while building project monitor (target: Desktop)
  24. When executing build step 'Make'

Quite odd.

 Signature 

Regards,

William

June 26, 2011

mirswith mirswith
Lab Rat
125 posts

I use PRE_TARGETDEPS here successfully. Your ouput looks like your intel lib paths need some quotes around them.

-=be

June 26, 2011

WilliamU WilliamU
Lab Rat
63 posts

Well that’s exactly what I thought, so I changed the file to ensure all paths containing spaces were quoted, and that all paths used forward slashes, but I still got the same error, even after closing and re-opening the session in case the prl files were cached in memory.

When setting my target deps I tried with both = and += followed by the name of my libraries I even tried $(SUBDIRS) as well, but I still didn’t get a rebuild of the main executable with any of the methods I tried!

So in a nutshell when I add a qDebug() line to one of my sub project libraries and Run the project the changes are detected and the library is rebuilt. However this library is never re-linked with the exe and I don’t see my qDebug() output. I will only ever see it if I make a change to the exe’s source to force a rebuild or do a manual rebuilt from the menu.

 Signature 

Regards,

William

 
  ‹‹ there must be a network proxy settings option in options.      MSVC2005 problem including Qt class with VSADDIN ››

You must log in to post a reply. Not a member yet? Register here!