aqtinstall: MemoryError during decompression & Unable to read c:\Users\qt\work\install\mkspecs\qconfig.pri

A recent install gave this bug report:

File “C:/msys64/mingw64/lib/python3.9/site-packages/py7zr/py7zr.py”, line 948, in extractall self._extract(path=path, return_dict=False, callback=callback) File “C:/msys64/mingw64/lib/python3.9/site-packages/py7zr/py7zr.py”, line 604, in _extract self.worker.extract( File “C:/msys64/mingw64/lib/python3.9/site-packages/py7zr/py7zr.py”, line 1165, in extract self.extract_single( File “C:/msys64/mingw64/lib/python3.9/site-packages/py7zr/py7zr.py”, line 1276, in extract_single raise e File “C:/msys64/mingw64/lib/python3.9/site-packages/py7zr/py7zr.py”, line 1261, in extract_single crc32 = self.decompress(fp, f.folder, ofp, f.uncompressed, f.compressed, src_end) File “C:/msys64/mingw64/lib/python3.9/site-packages/py7zr/py7zr.py”, line 1313, in decompress tmp = decompressor.decompress(fp, out_remaining) File “C:/msys64/mingw64/lib/python3.9/site-packages/py7zr/compressor.py”, line 630, in decompress tmp = self._decompress(self._unused + data, max_length) File “C:/msys64/mingw64/lib/python3.9/site-packages/py7zr/compressor.py”, line 602, in _decompress data = decompressor.decompress(data) MemoryError “”"

The above exception was the direct cause of the following exception:

Traceback (most recent call last): File “C:/msys64/mingw64/lib/python3.9/site-packages/aqt/installer.py”, line 99, in run args.func(args) File “C:/msys64/mingw64/lib/python3.9/site-packages/aqt/installer.py”, line 294, in run_install_qt run_installer(qt_archives.get_packages(), base_dir, sevenzip, keep) File “C:/msys64/mingw64/lib/python3.9/site-packages/aqt/installer.py”, line 835, in run_installer pool.starmap(installer, tasks) File “C:/msys64/mingw64/lib/python3.9/multiprocessing/pool.py”, line 372, in starmap return self._map_async(func, iterable, starmapstar, chunksize).get() File “C:/msys64/mingw64/lib/python3.9/multiprocessing/pool.py”, line 771, in get raise self._value MemoryError Arguments: ['C:\\msys64\\mingw64\\bin\\aqt', 'install', '5.12.9', 'windows', 'desktop', 'win64_mingw73'] Host: uname_result(system='Windows', node='DESKTOP-GLQ5UIR', release='10', version='10.0.19041', machine='AMD64') ===========================PLEASE FILE A BUG REPORT=========================== You have discovered a bug in aqt. Please file a bug report at https://github.com/miurahr/aqtinstall/issues. Please remember to include a copy of this program’s output in your report. Exception in thread Thread-1: Traceback (most recent call last): File “C:/msys64/mingw64/lib/python3.9/multiprocessing/connection.py”, line 317, in _recv_bytes

About this issue

  • Original URL
  • State: closed
  • Created 3 years ago
  • Comments: 16 (14 by maintainers)

Commits related to this issue

Most upvoted comments

Oops, #420 definitely does not fix this issue; I’m not sure why Github thinks it will.

I guess it is caused by the fixed keyword in the sentence Even after I fixed [the issue with my VPN](https://github.com/miurahr/aqtinstall/issues/416#issuecomment-933031438) .

Good observation; I changed the language and now the link is gone. Thanks!

c:\Users\qt\work\install\ is a default path embedded in binaries on windows. aqt updater don’t touch windeployqt.exe, so there is a possible fix to update the windeployqt binary.

After the installation finishes, issue:

aqt install 5.12.9 windows desktop win64_mingw73

One potential issue here is the location to which aqt installed Qt. This command will install Qt to ./5.12.9, where . is the current working directory. You can change the path to which aqt will install Qt with the --outputdir flag, but it will always install to a directory with the version number in the name.

Warning: Unable to read c:\Users\qt\work\install\mkspecs\qconfig.pri: The system cannot find the path specified.
Unable to find dependent libraries of c:\Users\qt\work\install\bin\Qt5Core.dll :Cannot open 'c:/Users/qt/work/install/bin/Qt5Core.dll': The system cannot find the path specified.

I am unclear as to why the install script/windeployqt is looking for files in c:\Users\qt\work\install\; aqt will never install to this path. In aqt/updater.py, the Updater patches several binary files: on Windows, it updates paths that look like /Users/qt/work/install/* to point to the correct install path. The path c:\Users\qt\work\install\mkspecs\qconfig.pri looks unpatched to me. Maybe we need to audit the paths that Updater is patching and make sure that we are patching them all; grep could be useful here.

IIRC, the paths that we patch with Updater are fallback paths that are only used when certain environment variables are unavailable; I think that QTDIR is one of these. If your current working directory was C:\some_directory when you installed Qt, then I think QTDIR should point to C:\some_directory\5.12.9\win64_mingw73. You may be able to avoid all this trouble by setting the QTDIR environment variable before running make installer.

Oh, the format of the reply is not good. I’m trying to filter out some useful information.


@dwheeld wanted to build EdgeTX/edgetx. According to the documentation (Build Instructions under Windows 10 (MSYS2)@d35eff8 ), this project needs a Qt environment that is installed by aqtinstall:

Prepare the MSYS2 MinGW build environment for EdgeTX

Install required Python packages using pip. Enter:

pip install pillow clang aqtinstall

After the installation finishes, issue:

aqt install 5.12.9 windows desktop win64_mingw73

Wait for the installation to finish. Close the terminal with Ctrl+D again. This concludes the build setup preparations.

And the step 4 is:

Building Windows programs

Step 4 - Creating an installer

To create an installer, issue:

make installer

This creates under build directory companion subfolder binary companion-windows-2.6.0.exe. Thus, in C:\msys64\home\<username>\edgetx\edgetx_main\build-output\companion, an installer that you can use to install EdgeTX Companion on your system.

However, @dwheeld got a warning and an error related to Qt when executing make installer :

$ make installer
Building Windows NSIS installer...
...
... building things
...
Install the project...
-- Install configuration: "Release"
-- Up-to-date: C:/msys64/home/d_w_h/edgetx/edgetx_main/build-output/Release/companion.exe
-- Up-to-date: C:/msys64/home/d_w_h/edgetx/edgetx_main/build-output/Release/simulator.exe
-- Up-to-date: C:/msys64/home/d_w_h/edgetx/edgetx_main/build-output/Release/libopentx-tx16s-simulator.dll
-- Up-to-date: C:/msys64/home/d_w_h/edgetx/edgetx_main/build-output/Release/dfu-util.exe
-- Up-to-date: C:/msys64/home/d_w_h/edgetx/edgetx_main/build-output/Release/libusb0.dll
-- Up-to-date: C:/msys64/home/d_w_h/edgetx/edgetx_main/build-output/Release/libusb-1.0.dll
-- Up-to-date: C:/msys64/home/d_w_h/edgetx/edgetx_main/build-output/Release/license.txt
-- Up-to-date: C:/msys64/home/d_w_h/edgetx/edgetx_main/build-output/Release/SDL.dll
Warning: Unable to read c:\Users\qt\work\install\mkspecs\qconfig.pri: The system cannot find the path specified.
Unable to find dependent libraries of c:\Users\qt\work\install\bin\Qt5Core.dll :Cannot open 'c:/Users/qt/work/install/bin/Qt5Core.dll': The system cannot find the path specified.

make[3]: *** [companion/src/CMakeFiles/installer.dir/build.make:72: companion/src/CMakeFiles/installer] Error 1
make[2]: *** [CMakeFiles/Makefile2:2231: companion/src/CMakeFiles/installer.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:2238: companion/src/CMakeFiles/installer.dir/rule] Error 2
make: *** [Makefile:1034: installer] Error 2