Attempting to build av fails, probably because ffmpeg is installed in a custom directory and added rpath information to its linking parameters.
Processing /build/av-12.0.0/work/av-12.0.0
Added file:///build/av-12.0.0/work/av-12.0.0 to build tracker '/tmp/pip-build-tracker-yubnzlsz'
Created temporary directory: /tmp/pip-modern-metadata-0vj5puev
Running command Preparing metadata (pyproject.toml)
pkg-config returned flags we don't understand: -Wl,-rpath,/pkg/main/media-video.ffmpeg.libs.6.1.1.linux.amd64/lib64 -Wl,-rpath,/pkg/main/media-video.ffmpeg.libs.6.1.1.linux.amd64/lib64 -Wl,-rpath,/pkg/main/media-video.ffmpeg.libs.6.1.1.linux.amd64/lib64 -Wl,-rpath,/pkg/main/media-video.ffmpeg.libs.6.1.1.linux.amd64/lib64 -Wl,-rpath,/pkg/main/media-video.ffmpeg.libs.6.1.1.linux.amd64/lib64 -Wl,-rpath,/pkg/main/media-video.ffmpeg.libs.6.1.1.linux.amd64/lib64 -Wl,-rpath,/pkg/main/media-video.ffmpeg.libs.6.1.1.linux.amd64/lib64
error: subprocess-exited-with-error
× Preparing metadata (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> See above for output.
Expected behavior
Those parameters can be safely ignored, and av should build.
Actual behavior
Build fails
Build report:
Running: /pkg/main/dev-lang.python.core.3.12.2/bin/python3 -m pip install --verbose --verbose --verbose --no-binary=:all: --no-build-isolation --no-cache-dir --no-deps --disable-pip-version-check --root /build/av-12.0.0/dist --prefix /pkg/main/dev-python.av.mod.12.0.0.py3.12.2.linux.amd64 .
Using pip 24.0 from /pkg/main/dev-python.pip.mod.24.0.py3.12.2.linux.amd64/lib/python3.12/site-packages/pip (python 3.12)
Non-user install due to --prefix or --target option
Created temporary directory: /tmp/pip-build-tracker-yubnzlsz
Initialized build tracking at /tmp/pip-build-tracker-yubnzlsz
Created build tracker: /tmp/pip-build-tracker-yubnzlsz
Entered build tracker: /tmp/pip-build-tracker-yubnzlsz
Created temporary directory: /tmp/pip-install-o1mxv0y8
Created temporary directory: /tmp/pip-ephem-wheel-cache-q_ynq57y
Processing /build/av-12.0.0/work/av-12.0.0
Added file:///build/av-12.0.0/work/av-12.0.0 to build tracker '/tmp/pip-build-tracker-yubnzlsz'
Created temporary directory: /tmp/pip-modern-metadata-0vj5puev
Running command Preparing metadata (pyproject.toml)
pkg-config returned flags we don't understand: -Wl,-rpath,/pkg/main/media-video.ffmpeg.libs.6.1.1.linux.amd64/lib64 -Wl,-rpath,/pkg/main/media-video.ffmpeg.libs.6.1.1.linux.amd64/lib64 -Wl,-rpath,/pkg/main/media-video.ffmpeg.libs.6.1.1.linux.amd64/lib64 -Wl,-rpath,/pkg/main/media-video.ffmpeg.libs.6.1.1.linux.amd64/lib64 -Wl,-rpath,/pkg/main/media-video.ffmpeg.libs.6.1.1.linux.amd64/lib64 -Wl,-rpath,/pkg/main/media-video.ffmpeg.libs.6.1.1.linux.amd64/lib64 -Wl,-rpath,/pkg/main/media-video.ffmpeg.libs.6.1.1.linux.amd64/lib64
error: subprocess-exited-with-error
× Preparing metadata (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> See above for output.
note: This error originates from a subprocess, and is likely not a problem with pip.
full command: /pkg/main/dev-lang.python.core.3.12.2/bin/python3 /pkg/main/dev-python.pip.mod.24.0.py3.12.2.linux.amd64/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py prepare_metadata_for_build_wheel /tmp/tmpn6fli728
cwd: /build/av-12.0.0/work/av-12.0.0
Preparing metadata (pyproject.toml) ... error
error: metadata-generation-failed
× Encountered error while generating package metadata.
╰─> See above for output.
note: This is an issue with the package mentioned above, not pip.
hint: See above for details.
Exception information:
Traceback (most recent call last):
File "/pkg/main/dev-python.pip.mod.24.0.py3.12.2.linux.amd64/lib/python3.12/site-packages/pip/_internal/operations/build/metadata.py", line 35, in generate_metadata
distinfo_dir = backend.prepare_metadata_for_build_wheel(metadata_dir)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/pkg/main/dev-python.pip.mod.24.0.py3.12.2.linux.amd64/lib/python3.12/site-packages/pip/_internal/utils/misc.py", line 766, in prepare_metadata_for_build_wheel
return super().prepare_metadata_for_build_wheel(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/pkg/main/dev-python.pip.mod.24.0.py3.12.2.linux.amd64/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_impl.py", line 186, in prepare_metadata_for_build_wheel
return self._call_hook('prepare_metadata_for_build_wheel', {
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/pkg/main/dev-python.pip.mod.24.0.py3.12.2.linux.amd64/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_impl.py", line 311, in _call_hook
self._subprocess_runner(
File "/pkg/main/dev-python.pip.mod.24.0.py3.12.2.linux.amd64/lib/python3.12/site-packages/pip/_internal/utils/subprocess.py", line 252, in runner
call_subprocess(
File "/pkg/main/dev-python.pip.mod.24.0.py3.12.2.linux.amd64/lib/python3.12/site-packages/pip/_internal/utils/subprocess.py", line 224, in call_subprocess
raise error
pip._internal.exceptions.InstallationSubprocessError: Preparing metadata (pyproject.toml) exited with 1
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/pkg/main/dev-python.pip.mod.24.0.py3.12.2.linux.amd64/lib/python3.12/site-packages/pip/_internal/cli/base_command.py", line 180, in exc_logging_wrapper
status = run_func(*args)
^^^^^^^^^^^^^^^
File "/pkg/main/dev-python.pip.mod.24.0.py3.12.2.linux.amd64/lib/python3.12/site-packages/pip/_internal/cli/req_command.py", line 245, in wrapper
return func(self, options, args)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/pkg/main/dev-python.pip.mod.24.0.py3.12.2.linux.amd64/lib/python3.12/site-packages/pip/_internal/commands/install.py", line 377, in run
requirement_set = resolver.resolve(
^^^^^^^^^^^^^^^^^
File "/pkg/main/dev-python.pip.mod.24.0.py3.12.2.linux.amd64/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/resolver.py", line 76, in resolve
collected = self.factory.collect_root_requirements(root_reqs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/pkg/main/dev-python.pip.mod.24.0.py3.12.2.linux.amd64/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/factory.py", line 534, in collect_root_requirements
reqs = list(
^^^^^
File "/pkg/main/dev-python.pip.mod.24.0.py3.12.2.linux.amd64/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/factory.py", line 490, in _make_requirements_from_install_req
cand = self._make_base_candidate_from_link(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/pkg/main/dev-python.pip.mod.24.0.py3.12.2.linux.amd64/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/factory.py", line 228, in _make_base_candidate_from_link
self._link_candidate_cache[link] = LinkCandidate(
^^^^^^^^^^^^^^
File "/pkg/main/dev-python.pip.mod.24.0.py3.12.2.linux.amd64/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 290, in __init__
super().__init__(
File "/pkg/main/dev-python.pip.mod.24.0.py3.12.2.linux.amd64/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 156, in __init__
self.dist = self._prepare()
^^^^^^^^^^^^^^^
File "/pkg/main/dev-python.pip.mod.24.0.py3.12.2.linux.amd64/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 222, in _prepare
dist = self._prepare_distribution()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/pkg/main/dev-python.pip.mod.24.0.py3.12.2.linux.amd64/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/candidates.py", line 301, in _prepare_distribution
return preparer.prepare_linked_requirement(self._ireq, parallel_builds=True)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/pkg/main/dev-python.pip.mod.24.0.py3.12.2.linux.amd64/lib/python3.12/site-packages/pip/_internal/operations/prepare.py", line 525, in prepare_linked_requirement
return self._prepare_linked_requirement(req, parallel_builds)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/pkg/main/dev-python.pip.mod.24.0.py3.12.2.linux.amd64/lib/python3.12/site-packages/pip/_internal/operations/prepare.py", line 640, in _prepare_linked_requirement
dist = _get_prepared_distribution(
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/pkg/main/dev-python.pip.mod.24.0.py3.12.2.linux.amd64/lib/python3.12/site-packages/pip/_internal/operations/prepare.py", line 71, in _get_prepared_distribution
abstract_dist.prepare_distribution_metadata(
File "/pkg/main/dev-python.pip.mod.24.0.py3.12.2.linux.amd64/lib/python3.12/site-packages/pip/_internal/distributions/sdist.py", line 67, in prepare_distribution_metadata
self.req.prepare_metadata()
File "/pkg/main/dev-python.pip.mod.24.0.py3.12.2.linux.amd64/lib/python3.12/site-packages/pip/_internal/req/req_install.py", line 579, in prepare_metadata
self.metadata_directory = generate_metadata(
^^^^^^^^^^^^^^^^^^
File "/pkg/main/dev-python.pip.mod.24.0.py3.12.2.linux.amd64/lib/python3.12/site-packages/pip/_internal/operations/build/metadata.py", line 37, in generate_metadata
raise MetadataGenerationFailed(package_details=details) from error
pip._internal.exceptions.MetadataGenerationFailed: metadata generation failed
Removed file:///build/av-12.0.0/work/av-12.0.0 from build tracker '/tmp/pip-build-tracker-yubnzlsz'
Removed build tracker: '/tmp/pip-build-tracker-yubnzlsz'
Overview
Attempting to build
av
fails, probably because ffmpeg is installed in a custom directory and added rpath information to its linking parameters.Expected behavior
Those parameters can be safely ignored, and av should build.
Actual behavior
Build fails
Build report:
Versions
Research
I have done the following:
Additional context
This is to get av built as a system package on Azusa.