Details
-
Bug
-
Resolution: Fixed
-
P4: Low
-
6.7.3
-
-
39b0b466b (dev), 29afca660 (6.8), d9f2ed4bd (tqtc/lts-6.5)
Description
If Qt is installed on a read-only file system or if writable flag is cleared from binaries (for example: {{cd installPath; find -type f -exec chmod -w '{}' \; }}), PySide build will fail when it tries to run patchelf to adjust rpath.
[INFO]: -- Compiling module pyside-tools... ninja: no work to do. [INFO]: -- Skipped documentation generation. Enable with '--build-docs' [INFO]: Installing module pyside-tools... [0/1] Install the project... -- Install configuration: "Release" [INFO]: Using /usr/bin/patchelf ... [INFO]: Preparing setup tools build directory. [INFO]: Removing /home/user/work/pyside-setup/build/qfp-py3.10-qt6.7.3-64bit-release/package [INFO]: Copying files... [INFO]: Making file /home/user/work/pyside-setup/build/qfp-py3.10-qt6.7.3-64bit-release/package/PySide6/scripts/__init__.py. [INFO]: /home/user/work/pyside-setup/build/qfp-py3.10-qt6.7.3-64bit-release/package/PySide6/QtAsyncio/__init__.py is up to date. [INFO]: /home/user/work/pyside-setup/build/qfp-py3.10-qt6.7.3-64bit-release/package/PySide6/QtAsyncio/events.py is up to date. [INFO]: /home/user/work/pyside-setup/build/qfp-py3.10-qt6.7.3-64bit-release/package/PySide6/QtAsyncio/tasks.py is up to date. [INFO]: /home/user/work/pyside-setup/build/qfp-py3.10-qt6.7.3-64bit-release/package/PySide6/QtAsyncio/futures.py is up to date. [INFO]: Copying files... [INFO]: Checking if QtCore library needs a new rpath to make it work with ICU libs. [INFO]: **Skipping copy tree /home/user/work/qt/build/qtbase/inst/qml to /home/user/work/pyside-setup/build/qfp-py3.10-qt6.7.3-64bit-release/package/PySide6/Qt/qml Source does not exist. filter=None. ignore=['*.debug']. [INFO]: **Skipping copy tree /home/user/work/qt/build/qtbase/inst/translations to /home/user/work/pyside-setup/build/qfp-py3.10-qt6.7.3-64bit-release/package/PySide6/Qt/translations Source does not exist. filter=['*.qm', '*.pak']. ignore=None. patchelf: open: Permission denied Traceback (most recent call last): File "/home/user/work/pyside-setup/setup.py", line 42, in <module> setup_runner.run_setup() File "/home/user/work/pyside-setup/build_scripts/setup_runner.py", line 207, in run_setup self.run_setuptools_setup() File "/home/user/work/pyside-setup/build_scripts/setup_runner.py", line 280, in run_setuptools_setup setup(**kwargs) File "/home/user/.local/lib/python3.10/site-packages/setuptools/__init__.py", line 103, in setup return distutils.core.setup(**attrs) File "/home/user/.local/lib/python3.10/site-packages/setuptools/_distutils/core.py", line 185, in setup return run_commands(dist) File "/home/user/.local/lib/python3.10/site-packages/setuptools/_distutils/core.py", line 201, in run_commands dist.run_commands() File "/home/user/.local/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 969, in run_commands self.run_command(cmd) File "/home/user/.local/lib/python3.10/site-packages/setuptools/dist.py", line 963, in run_command super().run_command(command) File "/home/user/.local/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 988, in run_command cmd_obj.run() File "/home/user/work/pyside-setup/build_scripts/main.py", line 214, in run _install.run(self) File "/home/user/.local/lib/python3.10/site-packages/setuptools/command/install.py", line 82, in run orig.install.run(self) File "/home/user/.local/lib/python3.10/site-packages/setuptools/_distutils/command/install.py", line 697, in run self.run_command('build') File "/home/user/.local/lib/python3.10/site-packages/setuptools/_distutils/cmd.py", line 318, in run_command self.distribution.run_command(command) File "/home/user/.local/lib/python3.10/site-packages/setuptools/dist.py", line 963, in run_command super().run_command(command) File "/home/user/.local/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 988, in run_command cmd_obj.run() File "/home/user/work/pyside-setup/build_scripts/main.py", line 428, in run self.prepare_packages() File "/home/user/work/pyside-setup/build_scripts/main.py", line 983, in prepare_packages return prepare_packages_posix(self, _vars, self.is_cross_compile) File "/home/user/work/pyside-setup/build_scripts/platforms/unix.py", line 253, in prepare_packages_posix pyside_build.update_rpath(libexec_executables, libexec=True) File "/home/user/work/pyside-setup/build_scripts/main.py", line 1182, in update_rpath rpath_cmd(executable) File "/home/user/work/pyside-setup/build_scripts/main.py", line 1154, in rpath_cmd linux_fix_rpaths_for_library(self._patchelf_path, srcpath, final_rpath, File "/home/user/work/pyside-setup/build_scripts/utils.py", line 906, in linux_fix_rpaths_for_library linux_set_rpaths(patchelf, executable_path, rpaths_string) File "/home/user/work/pyside-setup/build_scripts/utils.py", line 800, in linux_set_rpaths raise RuntimeError(f"Error patching rpath in {executable_path}") RuntimeError: Error patching rpath in /home/user/work/pyside-setup/build/qfp-py3.10-qt6.7.3-64bit-release/package/PySide6/Qt/libexec/uic Traceback (most recent call last): File "/home/user/work/pyside-setup/setup.py", line 42, in <module> setup_runner.run_setup() File "/home/user/work/pyside-setup/build_scripts/setup_runner.py", line 263, in run_setup raise RuntimeError(msg) RuntimeError: setup.py invocation failed with exit code: 1.
Attachments
For Gerrit Dashboard: PYSIDE-2885 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
596552,4 | build: Deal with read-only Qt installations | dev | pyside/pyside-setup | Status: MERGED | +2 | 0 |
596577,2 | build: Deal with read-only Qt installations | 6.8 | pyside/pyside-setup | Status: MERGED | +2 | 0 |
596886,2 | build: Deal with read-only Qt installations | tqtc/lts-6.5 | pyside/tqtc-pyside-setup | Status: MERGED | -1 | 0 |