auditwheels copies all external .so files into <packagename>.lib folder. Then packs them into the wheel file. Sometimes the current package (the developer what to audit) only has very small C++ extension, but it references a large .so file. For example, the user builds a C++ extension for PyTorch, it references libtorch*.so (some files up to 0.5GiB+). This makes the final wheel file extremely large (~2GiB).
We can add an option that if the .so files are located inside site-packages, then do not copy them but update the rpath of the target.
For example, the user builds a C++ extension for PyTorch, it references libtorch_python.so. auditwheel can update the rpath to:
$ORIGIN/../torch/lib # the relative path should be calculated carefully
where $ORIGIN/.. is site-packages. And then adds torch to the install dependency.