Results 1 to 5 of 5

Thread: Running QMake and Make on different systems

  1. #1
    Join Date
    Sep 2011
    Posts
    5
    Thanks
    1
    Qt products
    Qt3
    Platforms
    MacOS X

    Default Running QMake and Make on different systems

    Hello All,

    Because of some interesting configuration and allowances at my current company I've run into a situation where I need to build my Qt project on a machine that I can't install Qt on. I can copy Qt libs and headers to this system. So basically the easiest thing I thought of was to MOC everything that needed it without compiling with GCC. Leave everything in an in-between state. Then take it all to the target system and finish the make process to include compiling all the source.

    However, I can't seem to figure out how to do this. QMake makes a Makefile that bakes QMake calls into it, which is going to fail on my target system.

    Is it possible to do all Qt make actions and STOP before invoking the GCC compiler, move everything, and then simply continue the process on another system?

    Thank you!

  2. #2
    Join Date
    Mar 2009
    Location
    Brisbane, Australia
    Posts
    7,618
    Thanks
    13
    Thanked 1,592 Times in 1,520 Posts
    Qt products
    Qt4 Qt5
    Platforms
    Unix/X11 Windows
    Wiki edits
    17

    Default Re: Running QMake and Make on different systems

    No, the easiest thing is the normal situation, where you build the program on one machine and deploy the result to another machine. You already have a machine with a working Qt environment that is binary compatible with the target (or you could not copy libraries across). Build there and deploy.

  3. #3
    Join Date
    Sep 2011
    Posts
    5
    Thanks
    1
    Qt products
    Qt3
    Platforms
    MacOS X

    Default Re: Running QMake and Make on different systems

    Hey Chris, thank you for the reply.

    The normal situation is what I've done and desperately want to continue to do. The problem is in a number of core OS libraries that because of some oversight are old on the target machine and newer on our development machines. Code compiled against these non-Qt libraries blows up when dynamically linking against the older libraries on the target machine. That's why I'm trying to compile on the target machine - so that I link against those libraries. The target is binary compatible...I just can't install Qt on it because of process limitations, not technical limitations.

  4. #4
    Join Date
    Sep 2011
    Posts
    5
    Thanks
    1
    Qt products
    Qt3
    Platforms
    MacOS X

    Default Re: Running QMake and Make on different systems

    So I was able to resolve this. I took the makefile generated by qmake and pulled out all the gcc instructions and related declarations, putting them into their own makefile, including a make clean section. I then ran the full build, then ran the clean target of the gcc only makefile, leaving all moc files in place. I then transferred everything to my target system and ran the gcc only makefile. Worked like a charm.

  5. #5
    Join Date
    Mar 2009
    Location
    Brisbane, Australia
    Posts
    7,618
    Thanks
    13
    Thanked 1,592 Times in 1,520 Posts
    Qt products
    Qt4 Qt5
    Platforms
    Unix/X11 Windows
    Wiki edits
    17

    Default Re: Running QMake and Make on different systems

    Did you explore deploying private versions of the system libraries along with your application?

Similar Threads

  1. Replies: 6
    Last Post: 21st August 2013, 05:28
  2. qmake doesn't make a 'make' file
    By elyness in forum Installation and Deployment
    Replies: 1
    Last Post: 4th August 2010, 15:21
  3. Replies: 2
    Last Post: 28th May 2010, 09:16
  4. Window OS make distclean && qmake && make one line
    By patrik08 in forum General Programming
    Replies: 4
    Last Post: 22nd March 2007, 10:43
  5. running qmake
    By exsto in forum Installation and Deployment
    Replies: 2
    Last Post: 15th July 2006, 17:27

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Digia, Qt and their respective logos are trademarks of Digia Plc in Finland and/or other countries worldwide.