Results 1 to 17 of 17

Thread: 4.5.0-rc1 space help

  1. #1
    Join Date
    Oct 2006
    Location
    New Delhi, India
    Posts
    2,467
    Thanks
    8
    Thanked 334 Times in 317 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11 Windows

    Default 4.5.0-rc1 space help

    Hi,
    I was trying to install 4.5.0-rc1 open source on my win 32 machine. I had left compilation in night and was shocked in morning to see even 4GB space was not sufficient for it !! Compilation had stopped on error due to no disk space.
    I will anyhow make space and compile again.
    What I want to know is , is there a way to clean the installation directory after compilation. What I know is even commercial edition of Qt 4.5.0-rc1 takes about 900 MB , with all the executables and source code installed.
    How can I achieve this size limit with open source. There's a difference of more than 3GB .... too much space to be ignored
    It would be nice if someone explains why this huge gap.... are intermediate files taking space ?

  2. #2
    Join Date
    Oct 2006
    Location
    New Delhi, India
    Posts
    2,467
    Thanks
    8
    Thanked 334 Times in 317 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11 Windows

    Default Re: 4.5.0-rc1 space help

    Forget 4GB.. complete installation takes 7.2 GB !!!

    Well I figured it out that the intermediate files generated by VC compiler takes a huge amount of space. Also found a way to clean this -
    nmake confclean - after the installation has completed. This reduces the whole 4.5.0-rc1 folder size to about 1.1 GB which is OK with me.

    Now question comes, is there any way to prevent generation of these intermediate files ?
    I re-installed Qt with the following options -
    -no-dsp -no-vcproj ,,, still no use. The setup still took 7 GB

    Can someone tell the options to avoid generation of these files ? Or do I have to run nmake confclean after installation ?

  3. #3
    Join Date
    Jan 2006
    Location
    Warsaw, Poland
    Posts
    33,359
    Thanks
    3
    Thanked 5,015 Times in 4,792 Posts
    Qt products
    Qt3 Qt4 Qt5 Qt/Embedded
    Platforms
    Unix/X11 Windows Android Maemo/MeeGo
    Wiki edits
    10

    Default Re: 4.5.0-rc1 space help

    Quote Originally Posted by aamer4yu View Post
    Forget 4GB.. complete installation takes 7.2 GB !!!
    It's mostly due to WebKit. If you don't need it, disable its compilation by passing -no-webkit to configure.

    Also found a way to clean this -
    nmake confclean - after the installation has completed. This reduces the whole 4.5.0-rc1 folder size to about 1.1 GB which is OK with me.
    Also try "nmake clean" or "nmake distclean" (the latter if you use a prefix installation, otherwise target files will get deleted as well).

    Now question comes, is there any way to prevent generation of these intermediate files ?
    No, because these intermediate files are object files that are later assembled into the final binaries. Without them the framework won't build. The only thing you can do is to manually make each target and then clean it (like cd src\gui; nmake; nmake clean) before going onto the next one. But it might be easier to create a ramdisk and do the compilation there (using a prefix installation to avoid having to mount the ramdisk in wacky places). The additional benefit of such solution will be reduction of the compilation time as the system won't have to access the hard disk (provided you have enough memory).

  4. #4
    Join Date
    Oct 2006
    Location
    New Delhi, India
    Posts
    2,467
    Thanks
    8
    Thanked 334 Times in 317 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11 Windows

    Default Re: 4.5.0-rc1 space help

    It's mostly due to WebKit. If you don't need it, disable its compilation by passing -no-webkit to configure.
    Well, I guess I want to explore this feature. And if am not wrong, webkit is for displaying/manipulating web pages in your application, right ?
    Also try "nmake clean" or "nmake distclean" (the latter if you use a prefix installation, otherwise target files will get deleted as well).
    Can you elaborate more on the difference between the two - nmake clean / nmake distclean ?
    and what is a prefix installation ?

    Am pretty dumb when it comes to such installation and deployment things. Is there any good site or book from where I can learn these things. Am sure what I have asked is not a big problem, only lack of knowledge is making it

  5. #5
    Join Date
    Jan 2006
    Location
    Warsaw, Poland
    Posts
    33,359
    Thanks
    3
    Thanked 5,015 Times in 4,792 Posts
    Qt products
    Qt3 Qt4 Qt5 Qt/Embedded
    Platforms
    Unix/X11 Windows Android Maemo/MeeGo
    Wiki edits
    10

    Default Re: 4.5.0-rc1 space help

    Quote Originally Posted by aamer4yu View Post
    Well, I guess I want to explore this feature. And if am not wrong, webkit is for displaying/manipulating web pages in your application, right ?
    Right.

    Can you elaborate more on the difference between the two - nmake clean / nmake distclean ?
    clean removes only intermediate files, distclean removes all generated files.

    and what is a prefix installation ?
    You pass "-prefix someplace" to configure and after compilation, when you issue "make install", the target files are installed into "somewhere". This works very well on unices. With Windows it causes some trouble at the beginning as you need to install the specs files before doing the actual compilation but once this is resolved "make install" works fine and you can delete the whole source tree.

    Am pretty dumb when it comes to such installation and deployment things. Is there any good site or book from where I can learn these things. Am sure what I have asked is not a big problem, only lack of knowledge is making it
    Qt is not unique here, it uses regular methods known in the unix world for years. I understand this is a bit more complex than just clicking "next" and "finish" but gives much more flexibility.

  6. #6
    Join Date
    Oct 2006
    Location
    New Delhi, India
    Posts
    2,467
    Thanks
    8
    Thanked 334 Times in 317 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11 Windows

    Default Re: 4.5.0-rc1 space help

    Thanks for your clarifications.
    Qt is not unique here, it uses regular methods known in the unix world for years. I understand this is a bit more complex than just clicking "next" and "finish" but gives much more flexibility.
    For me its complex for now as I am a windows user and used to Next & FInish buttons I guess .
    Well about the prefix thing, I do remember doing it for OpenSsl. For that too I just followed the steps in install file. the ms\do_masm stuff... though I completely didnt understand whats hapenning.

    For Qt I follow the following steps-
    1. Configure.exe with required options
    2. nmake

    thats it. I didnt see the prefix option in configure.exe help. From what you have said, I get it that with -prefix option, you can call nmake -install as the 3rd step , am i right ?
    If yes, Qt will still compile in the folder and after the nmake - install command , copy the dll's and exe to the -prefix folder. However the folder in which I compiled Qt will still occupy 7GB ( as it does now) and install might contain abt 1 GB. But in prefix case I can remove the 7GB folder.

    Am i getting it right ? more queries after this :P

  7. #7
    Join Date
    Jan 2006
    Location
    Warsaw, Poland
    Posts
    33,359
    Thanks
    3
    Thanked 5,015 Times in 4,792 Posts
    Qt products
    Qt3 Qt4 Qt5 Qt/Embedded
    Platforms
    Unix/X11 Windows Android Maemo/MeeGo
    Wiki edits
    10

    Default Re: 4.5.0-rc1 space help

    Quote Originally Posted by aamer4yu View Post
    I didnt see the prefix option in configure.exe help.
    I'm pretty sure it's there. At least it used to be some time ago

    From what you have said, I get it that with -prefix option, you can call nmake -install as the 3rd step , am i right ?
    Without the dash ("nmake install"). Apart from that - yes, that's correct.

    If yes, Qt will still compile in the folder and after the nmake - install command , copy the dll's and exe to the -prefix folder.
    Yes, it's kind of a shadow build.

    However the folder in which I compiled Qt will still occupy 7GB ( as it does now) and install might contain abt 1 GB. But in prefix case I can remove the 7GB folder.
    Yes, that's correct. But the destination folder will be much smaller.

  8. The following user says thank you to wysota for this useful post:

    aamer4yu (17th February 2009)

  9. #8
    Join Date
    Oct 2006
    Location
    New Delhi, India
    Posts
    2,467
    Thanks
    8
    Thanked 334 Times in 317 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11 Windows

    Default Re: 4.5.0-rc1 space help

    Thanks for clearing the doubts.

    I had read little about shadow builds for windows ce. will look more into it.
    Few more things hope you mind clearing :P

    1. If I use prefix installation, Can I copy the installed folder to some other machine ? Or do I need to install Qt separately on other machines ? I had seen some Trolltech entries in the registry, so doubtful about it.

    2. Is src / examples / demos available in this prefix installation ? I assume this folder is similar to Commercial installation of Qt , am i right ?

    3. Even If I dont use prefix installation and run nmake confclean after installing Qt, Can I copy the Qt folder as mentioned in Ques 1 ?

    4. What is the difference between the folders - a) using prefix installation (b) Qt folder after running nmake confclean ? Will they be almost same ?

    5. Some link or book about these installation steps and options ?
    Last edited by aamer4yu; 17th February 2009 at 20:40.

  10. #9
    Join Date
    Jan 2006
    Location
    Warsaw, Poland
    Posts
    33,359
    Thanks
    3
    Thanked 5,015 Times in 4,792 Posts
    Qt products
    Qt3 Qt4 Qt5 Qt/Embedded
    Platforms
    Unix/X11 Windows Android Maemo/MeeGo
    Wiki edits
    10

    Default Re: 4.5.0-rc1 space help

    Quote Originally Posted by aamer4yu View Post
    1. If I use prefix installation, Can I copy the installed folder to some other machine ?
    Yes, but you have to place it under the same path as on the original machine. QMake has some paths hardcoded into itself (basically the specs directory) so you either have to patch it (like Trolltech installer does when you install the binary version of Qt for MinGW) or the path has to be preserved. A good idea might be to create a virtual device (like "Q:") just for Qt installation, then it's easy to do some manipulations and to have the same path on all machines you want to develop using Qt.

    2. Is src / examples / demos available in this prefix installation ? I assume this folder is similar to Commercial installation of Qt , am i right ?
    As far as I remember examples and demos are available. Source files are not, that's the whole idea of a prefix build.

    3. Even If I dont use prefix installation and run nmake confclean after installing Qt, Can I copy the Qt folder as mentioned in Ques 1 ?
    Exactly the same rules apply to a prefix build and to a in-place build.

    4. What is the difference between the folders - a) using prefix installation (b) Qt folder after running nmake confclean ? Will they be almost same ?
    Prefix installation doesn't contain anything that is required only to build Qt itself (like the sources). So a prefix installation is equivalent to a binary-only installation - with bin, lib, plugins and mkspecs folder.

    5. Some link or book about these installation steps and options ?
    "configure -help" and parts of our wiki (wiki.qtcentre.org) related to installation.

  11. #10
    Join Date
    Oct 2006
    Location
    New Delhi, India
    Posts
    2,467
    Thanks
    8
    Thanked 334 Times in 317 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11 Windows

    Default Re: 4.5.0-rc1 space help

    Much clear now..
    "configure -help" and parts of our wiki (wiki.qtcentre.org) related to installation.
    I didnt find -prefix option in configure.exe

    So I can copy Qt folder ( either prefix installation or Qt folder after nmake confclean) to another machine under same path. Fine.
    But what about the entries in the windows registry ? On the new machine registry entries for Trolltech wont be created. How will this affect working of Qt programs/ assistant / demos ?


    As for now, I will just run nmake confclean on my system. I will have the source and binaries too, and 1 GB is OK with me . Only during compilation will I need to make space . Wonder if it will be the same process to install Qt for WinCE

  12. #11
    Join Date
    Jan 2006
    Location
    Warsaw, Poland
    Posts
    33,359
    Thanks
    3
    Thanked 5,015 Times in 4,792 Posts
    Qt products
    Qt3 Qt4 Qt5 Qt/Embedded
    Platforms
    Unix/X11 Windows Android Maemo/MeeGo
    Wiki edits
    10

    Default Re: 4.5.0-rc1 space help

    Quote Originally Posted by aamer4yu View Post
    But what about the entries in the windows registry ? On the new machine registry entries for Trolltech wont be created.
    They will be created. It's not the installation process that creates them. The only things that will be missing are environment variables but that you can copy from the source machine.

  13. #12
    Join Date
    Nov 2008
    Posts
    33
    Qt products
    Qt3 Qt4
    Platforms
    Unix/X11 Windows

    Default Re: 4.5.0-rc1 space help

    Quote Originally Posted by wysota View Post
    Right.
    clean removes only intermediate files, distclean removes all generated files.
    You mean that it won't remove executables and libraries?

  14. #13
    Join Date
    Jan 2006
    Location
    Warsaw, Poland
    Posts
    33,359
    Thanks
    3
    Thanked 5,015 Times in 4,792 Posts
    Qt products
    Qt3 Qt4 Qt5 Qt/Embedded
    Platforms
    Unix/X11 Windows Android Maemo/MeeGo
    Wiki edits
    10

    Default Re: 4.5.0-rc1 space help

    Which one? clean will not remove binaries and libraries, distclean will (they are also generated during the compilation process, right?).

  15. #14
    Join Date
    Nov 2008
    Posts
    33
    Qt products
    Qt3 Qt4
    Platforms
    Unix/X11 Windows

    Default Re: 4.5.0-rc1 space help

    Quote Originally Posted by wysota View Post
    Which one? clean will not remove binaries and libraries, distclean will (they are also generated during the compilation process, right?).
    sorry I forgot to be specific: yes, I meant "make clean"; so that one does not remove binaries and libraries... sorry for the question, but I was used to autotools generated Makefiles, where clean is clean everything.

  16. #15
    Join Date
    Oct 2006
    Location
    New Delhi, India
    Posts
    2,467
    Thanks
    8
    Thanked 334 Times in 317 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11 Windows

    Default Re: 4.5.0-rc1 space help

    From an earlier post...
    But it might be easier to create a ramdisk and do the compilation there (using a prefix installation to avoid having to mount the ramdisk in wacky places). The additional benefit of such solution will be reduction of the compilation time as the system won't have to access the hard disk (provided you have enough memory).
    I thought I understood the above, but I guess not. One way I found was using "subst" in windows comand prompt. Is this the same as ramdisk ?
    As for ramdisk, it creates disk in ram,and there are ways on net to do so.

    Now coming to use the ram disk for installation, how do I do it ?
    Unzip the source files to ram disk and compile from there ? But U have only 512MB on my pc. And during compilation I guess it takes a lot more space, in GBs. Even if I opt for prefix installation, I will still need that 7+ GB space for Qt to compile....

    Any light where I am misunderstanding ?

  17. #16
    Join Date
    Jan 2006
    Location
    Warsaw, Poland
    Posts
    33,359
    Thanks
    3
    Thanked 5,015 Times in 4,792 Posts
    Qt products
    Qt3 Qt4 Qt5 Qt/Embedded
    Platforms
    Unix/X11 Windows Android Maemo/MeeGo
    Wiki edits
    10

    Default Re: 4.5.0-rc1 space help

    My friend said that even if use of ramdisk is causing swaping it will still be faster than compiling to disk. But with only 512MB of RAM I guess the gain is minimal, so I probably wouldn't do it.
    Your biological and technological distinctiveness will be added to our own. Resistance is futile.

    Please ask Qt related questions on the forum and not using private messages or visitor messages.


  18. #17
    Join Date
    Oct 2006
    Location
    New Delhi, India
    Posts
    2,467
    Thanks
    8
    Thanked 334 Times in 317 Posts
    Qt products
    Qt4
    Platforms
    Unix/X11 Windows

    Default Re: 4.5.0-rc1 space help

    I had guessed so..
    Anyways even if we use RAM disk or virtual drive, I guess we can use only a specific Drive with -prefix option. Hence one must select a drive that can be available on all systems like Q:/ , Z:/ , etc. But once you have chosen, you must create that virtual drive if that drive is not present on the system.


    Now am onto trying making shared and static versions of Qt. Since I have about 7GB space left in my drive, what I am doing is this - Making shared and static folders on my USB Hard Disk(G:\) which has lots of space.. Now in these folders I will specify -prefix folders to D:\Qt\4.5.0-shared , D:\Qt\4.5.0-static. Now I know that if I run nmake install, it will install to these prefix folders. I was getting some error when I ran configure.exe, some mkspecs prob, lets see if I can come across it..


    By the way, how can I change the name of the thread ? I guess this thread has become related to 4.5.0 installation and not just the space problem.

Similar Threads

  1. Struggling with value space
    By UnicycleBloke in forum Qt for Embedded and Mobile
    Replies: 3
    Last Post: 29th May 2008, 00:26
  2. appBar: allocated space problem
    By mito in forum Qt Programming
    Replies: 4
    Last Post: 29th February 2008, 13:17
  3. expanding to the max. available space in a QStatusBar
    By momesana in forum Qt Programming
    Replies: 1
    Last Post: 11th November 2006, 21:02
  4. linking user space and kernel space programs with qmake
    By zielchri in forum Qt Programming
    Replies: 9
    Last Post: 9th March 2006, 00:11
  5. QTableWidget click in empty space results in error?
    By Giel Peters in forum Qt Programming
    Replies: 4
    Last Post: 21st January 2006, 01:07

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.