Qt Installer Framework 7zip exception not enough memory
When I want to generate repository using repogen on Windows10 with Qt Installer Framework 3.0.
I have an issue with 7zip:
repogen.exe -p packages repository
Caught 7zip exception: Cannot create archive "<full_path>\1.0.3lib.7z": not enough memory
I have at least 24GB of free memory, and enough disk space. Manual 7zip works perfectly.
Note: The lib folder contains some .lib and one of them is big: 387MB (total 410MB).
Is there any limitation of QtInstallerFramework? How can I use big files with this tool?
Hi and welcome to devnet forum
I doubt that there is a limitation, but I do not have enough insight there.
Try to remove the big library in order to check, if it is the real problem.
There's nothing "big" about 400MB as far as 7Zip is concerned! Sounds like something else is wrong.
If I replace the 400MB by a smaller one (100MB), it works.
As @JonB I consider this as odd. I am using 7z on a regular basis with really large files.
The only explanation possible is that there is part of 7z integrated in the installer and that part is creating the problem.
This is merely a user driven forum. Typically with Installer FrameWork questions not a lot of feedback is anticipated. Possibly on the developer mailing list there are some of IFW developers around.
They would know also if there are really such limitations.
I too am running into this issue. However I am trying to build the offline installer. When use the release build for my program the libraries are small enough that they do not trigger this issue. Using the Debug build causes the binarycreator to throw a fit. In my case it really does not like Qt5Cored.dll. When that dll is present it triggers the following:
 Warning: QFile::remove: Empty or null file name Caught exception: Cannot create archive "C:\Users\XXXX\AppData\Local\Temp\binarycreator-l9Mfi9\com.XXXX.xxxxx\2.0.0content.7z": not enough memory
I'm not sure if this helps matters at all but if you find out anything from the developer mailing list please drop a comment here.
BTW, I am using the 3.0.4 release for windows.
If you can guarantee the 7-zip app will be installed (and in the path) on all target machines, you can offload by calling the command line app 7z. Not the most elegant solution but it is the least work.